Support » Allgemeine Fragen » Bestimmte ältere Beiträge per Platzhalter in neuen Beitrag einbinden

  • Hallo,

    ich hoffe, ihr könnte mir helfen. Ich suche eine Lösung, wo ich in einem neuen Beitrag zwei Platzhalter einfügen und an dieser Position dann bestimmte ältere Beiträge eingefügt werden, als Vorschau. Ich kann manuell ja Beiträge einbetten, kein Problem. Nun möchte ich das aber automatisch machen, somit regelmäßig an diesen Stellen die Beiträge austauchen. Ich möchte eine Liste mit beispielsweise 10 Beiträgen festlegen, von denen dann zwei willkürlich gewählte von den 10 in alle anderen Beiträge, wo dieser Platzhalter eingebunden ist, eingebettet werden.

    Gibt es da eine Lösung dafür? Vielen Dank für eure Hilfe.

Ansicht von 14 Antworten - 1 bis 14 (von insgesamt 14)
  • Das sollte das können was du suchst: https://wordpress.org/plugins/insert-pages/

    Oder das: https://wordpress.org/plugins/visual-link-preview/

    Oder das? https://wordpress.org/plugins/shortcodes-ultimate/
    siehe: https://getshortcodes.com/docs/posts/

    • Diese Antwort wurde geändert vor 3 Jahren, 5 Monaten von Andreas Münch.
    Thread-Starter alex856

    (@alex856)

    Danke.

    … oder den Block Neueste Beiträge verwenden.

    (Gute Erklärung: https://gutenberg-fibel.de/bloecke/neueste-beitraege/)

    Thread-Starter alex856

    (@alex856)

    Neueste Beiträge möchte ich nicht, die habe ich schon in der Sidebar und weiter unten eingebaut. Ich möchte bestimmte Beiträge in andre Beiträge einfügen und gelegentlich dann durch andere austauschen, aber global. Ich möchte nicht jeden Beitrg wieder einzeln editieren. Kann ich das bei Gutenberg einstellen, welche Beiträge genau eingebunden werden sollen und dann wieder global ändern?

    Zur Erklärung warum. Mir geht es um die VG Wort Vergütung, dafür muss ein Beitrag 1500 Aufrufe aus DE haben. Deswegen möchte ich auf diese Art die Artikel einbinden, wo noch Aufrufe fehlen.

    • Diese Antwort wurde geändert vor 3 Jahren, 5 Monaten von alex856.

    Da wäre es wahrscheinlich am sinnvollsten, ein eigenes Code Snippet zu programmieren (kannst du mit Code Snippets einbinden), das genau deine Wünsche abbildet. Ich könnte mir vorstellen, das dir eine Funktion hilft, die einerseits Beiträge abruft, die ein (neu anzulegendes) Custom Field „VG Wort“ gesetzt haben und andererseits die letzten 8 Beiträge. Das kannst du dann noch zufällig sortieren. Mit einem Shortcode fügst du das dann noch in deine Seite ein. Wie fit bist du denn im PHP-Programmieren?

    Thread-Starter alex856

    (@alex856)

    So etwas habe ich schon in der Sidebar und unter dem Beitrag über Popular Posts gelöst. Ich muss aber diese 1500 Aufrufe Einschränkung haben. Kenne mich mit Programmierung nicht aus.

    Bisher binde ich diese Beiträge mit weniger als 1500 Aufrufe per Hand nach dem zweiten Absatz und weiter unten ein. Über ein Snippet wäre sicherlich machbar, wenn ich irgendwo global festlegen könnte, welche Beiträge derzeit eingeblendet werden sollen. Nach einer Woche könnte ich andere auswählen.

    Ich hatte mir das so vorgestellt:
    Du installierst Advanced Custom Fields und legst damit ein Custom Field „vgwort“ mit Feldtyp „True/False“ an. Dann gehst du in die Beiträge, die du mit auflisten möchtest und setzt dort das Kontrollkästchen.

    Nun erstellst du eine Webseite „… möchte ich nochmal ganz besonders auf unsere schönen Beiträge hinweisen: [vgwort]“.

    Dann installierst du das Plugin Code Snippets und erstellst ein neues Code-Snippet mit folgendem Inhalt:

    
    // neuer Shortcode [vgwort]
    add_shortcode( 'vgwort', 'shortcode_vgwort' );
    function shortcode_vgwort() {
    	$out = 'Test<br>';
    
            /*
             * Hier rufen wir Beiträge ab, bei denen das 
             * Kontrollkästchen vgwort gesetzt wurde
             */
    	$vgw_posts = get_posts( array(
    		'numberposts'	=> -1,
    		'post_type'		=> 'post',
    		'post_status'   => 'publish',
    		'meta_key'		=> 'vgwort',
    		'meta_value'	=> '1'
    	));
    	
            /*
             * Hier rufen wir alle neuen Beiträge ab, bei denen 
             * das Kontrollkästchen vgwort NICHT gesetzt wurde.
             */
    	$new_posts = get_posts( array(
    		'numberposts'   => 8,
    		'post_type'     => 'post',
    		'post_status'   => 'publish',
    		'meta_query' => array(
    			    'relation' => 'OR',
        			array(
         				'key'     => 'vgwort',
    					'value'   => '1',
         				'compare' => 'NOT LIKE',
    					),
    		        array(
         				'key'     => 'vgwort',
         				'compare' => 'NOT EXISTS',
    					)),
    	));
    	
            /*
             * Die Beiträge fassen wir zusammen und mischen sie
             */
    	$allposts = array_merge( $vgw_posts, $new_posts );
    	shuffle( $allposts );
     
            /*
             * Wir sammeln die Überschriften in einer Schleife
             */
    	foreach ( $allposts as $post ) {
      	 
    	 $out .= '<p><a href="' . get_the_permalink( $post->ID ) . '">' . $post->post_title . '</a></p>';
    	}
    	
        return $out; 
    }

    Auf die Weise wird nun an der Stelle des eingefügten Shortcodes eine Liste mit den verlinkten Überschriften deiner neusten Beiträge, gemischt mit Beiträgen bei denen das Kontrollkästchen gesetzt wurde, ausgegeben.

    Thread-Starter alex856

    (@alex856)

    Vielen Dank. Eine ausgegebene Liste nützt mir aber nichts. Dies hatte ich schon mal mit einem Related Posts Plugin gemacht, die Klickrate ist sehr gering. Seit dem ich die aber manuell eingebettet hatte, dann erscheint ja die Überschrift vom Beitrag, ein kleines Bild und die ersten Worte vom Beitrag, ist die Klickrate hochgegangen. Wenn man das so in einen Beitrag mit einbette, dann klicken meine Besucher, habe ich festgestellt. Listen, wie auch diese Releated Posts Lösungen unterhalb eines Beitrages funktionieren schlecht, sehr geringe Klickrate.

    Dann hättest du das vielleicht genauer ausdrücken sollen. 🙂

    Ich möchte eine Liste mit beispielsweise 10 Beiträgen festlegen, …

    Beitragsbilder und Inhalt einzufügen wäre kein großes Ding, aber dann kommen wahrscheinlich noch ein Dutzend anderer Ideen? 😉

    Vielleicht fällt noch jemand was dazu ein? Ich drücke die Daumen. 👍🏻

    Thread-Starter alex856

    (@alex856)

    Der Satz davor lautete: „Ich kann manuell ja Beiträge einbetten, kein Problem. Nun möchte ich das aber automatisch machen,“ Folglich soll es auch genau so am Ende aussehen, nur eben der Beitrag über einen Platzhalter automatisch eingefügt werden.

    Und weiter hatte ich geschrieben: „Ich möchte eine Liste mit beispielsweise 10 Beiträgen festlegen, von denen dann zwei willkürlich gewählte von den 10 in alle anderen Beiträge, wo dieser Platzhalter eingebunden ist, eingebettet werden.“

    Für mich ist es klar. Es sollen nicht irgendwelche Beiträge da eingefügt werden, wo der Platzhalter sich befindet, sondern bestimmte, die ich vorher ausgewählt habe.

    Das Snippet von Bego kannst du ja anpassen, dass eben nur zwei posts ausgegeben werden und eben auch Bild und Vorschautext/Excerpt.

    Dann ist es doch genau was du wolltest?

    • Diese Antwort wurde geändert vor 3 Jahren, 5 Monaten von Andreas Münch.
    Thread-Starter alex856

    (@alex856)

    Ja, nur wie mache ich das? Das mit den zwei Posts hast du noch nicht richtig verstanden. Ich füge im Beitrag nach dem zweiten Absatz bisher einen Beitrag manuell einen und einen weiteren am Ende des Beitrags, also an jeder Stelle nur einen, insgesamt dann zwei.

    Ja, nur wie mache ich das

    Programmieren lernen, jemanden beauftragen, oder jemanden finden der es kostenlos macht, obwohl du ja auch Geld damit verdienst.

    Thread-Starter alex856

    (@alex856)

    Ich verdiene noch gar kein Geld damit, deshalb will ich die Besucher ja etwas gezielter auf bestimmte Beiträge lenken, damit sich das mal ändert. Zum Programmieren lernen habe ich keine Zeit.

Ansicht von 14 Antworten - 1 bis 14 (von insgesamt 14)
  • Das Thema „Bestimmte ältere Beiträge per Platzhalter in neuen Beitrag einbinden“ ist für neue Antworten geschlossen.