Sidebar
ein-/ausblenden

more-Tag mit Werbung ersetzen

Plugin für WordPress SEO

Anzeige

Der more-Tag ist ein wunderbares Werkzeug und Standard im WordPress-Umfeld. In der Sicht des Beitrags (single) wird dieser nicht beachtet und kann so als Platzhalter für Werbung dienen. Damit braucht man keine eigenen Schlüssel ablegen - bspw. Shortcodes, die man später eventuell nicht mehr benötigt. Insofern kann es nützlich sein, das Markup des more-Tag im Frontend zu ersetzen.
Als Beispiel soll die Integration von Adsense genutzt werden. Ich zeige kurz mal den Source wie das aussehen könnte und jeder kann sich dies anpassen. Die Idee stammt von René, der damit seine Site unterstützt.

Die folgende Funktion und der Aufruf des Filter gehört in die functions.php des Themes. Die Variable $myAddContent bekommt den Inhalt, der im Frontend für den more-Tag ausgegeben werden soll.


function fb_more_link($content) {

	// ungleich single-post, dann standard-post
	if ( !is_single() )
		return $content;

	// adsense code
	$myAddContent = '
<div class="adsense">
	<script type="text/javascript"><!--
	google_ad_client = "pub-1234567890987654";
	google_ad_width = 468;
	google_ad_height = 60;
	google_ad_format = "468x60_as";
	google_ad_type = "text_image";
	google_ad_channel = "8123785769";
	google_color_border = "BBB28E";
	google_color_bg = "FFFFFF";
	google_color_link = "793907";
	google_color_text = "161406";
	google_color_url = "BBB28E";
	google_ui_features = "rc:6";
	//-->
	</script>
	<script type="text/javascript"
	  src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
	</script>
</div>';

	// ersetze more-Tag mit eigenem Source
	$content = preg_replace('/<span id\=\"(more\-\d+)"><\/span>/', $myAddContent, $content);
	return $content;
}
add_filter( 'the_content', 'fb_more_link' );

Alternativ kann ähnliches auch via Shortcodes steuern und so ein wenig flexibler arbeiten - aber dazu dient ein anderer Beitrag von mir.

39 Kommentare zu „more-Tag mit Werbung ersetzen“

  1. 1
    Kommentar von Micha

    Dann ist natürlich die more Funktionalität weg. Wäre es nicht sinnvoller, den More-span zu suchen und dahinter die Werbung zu plazieren, damit die Funktionalität erhalten bleibt?

  2. 2
    Kommentar von Sergej Müller

    Frank, da hast du mich auf eine Idee gebracht. Ich habe noch ein altes, unveröffentlichtes Plugin für die AdWords-Ausgabe nach Kategorien. Kann ich ja rauslegen.

  3. 3
    Kommentar von René

    Danke nochmal für die Hilfe ;)

  4. 4
    Kommentar von Frank Bültge

    @Micha: die Funktion hat im single-Modus keine Wirkung, außer das sie Markup ablegt; aber man kann ja auch den Adsense code davor/dahinter platzieren.

    @Sergej: :) gute Idee.

  5. 5
    Kommentar von Sergej Müller

    Im Apfelzeug-Blog wird auf Beitragsseiten auch ein statischer Banner gezeigt. Da realisiere ich es so:

    if (is_singular()) {
    $banner = 'mein code';
    return preg_replace(
    '#()#',
    $banner. '$1',
    $data
    );
    }

    Damit wäre auch Micha glücklich ;)

  6. 6
    Kommentar von Paul

    Hast du vielleicht einen Tipp für mich, wie man an der Stelle einen PHP Code ausgeben kann. Suche nämlich eine Möglichkeit dort (eigentlich in der Mitte eines Artikels) Ähnliche Artikel ausgeben zu lassen, wie es bei welt.de oder bild.de der fall ist.

  7. 7
    Kommentar von Conny Petersen

    Interessantes Feature. Bietet sicherlich eine Menge vorzüge gegenüber der regulären Durchführung.
    Danke für den Hinweis.

  8. 8
    Kommentar von Frank Bültge

    @Paul: man kann auch anstatt der Variable mit dem Adsende-Code Funktionen aufrufen.

  9. 9
    Kommentar von Dennis

    Das Beispiel leuchtet mir nicht ganz ein. In der single.php befindet sich in der Regel kein "More-Link" Markup. Wenn doch, sollte man das entfernen da es Overhead ist. ^^

  10. 10
    Kommentar von Frank Bültge

    @Dennis: Der Tag wird nicht ausgegeben, da WP dass filtert. Daher setzt die Lösung via Filter an und WP kann dann die Werbung nicht mehr filtern.

  11. 11
    Kommentar von Micha

    Also in meinem Blog mit WP 2.9 hab ich im Beitrag den Anker
    <span id="more-659"></span>
    , der direkt von der index.php aus angesprungen werden kann. (Sonst wäre diese Funktion ja auch sinnlos). Kaputt machen würde ich sie jedenfalls nicht.

  12. 12
    Kommentar von Micha

    PS: Hier kommt keine Meldung mehr, das der Kommentar erst noch moderiert wird ;)

  13. 13
    Kommentar von Dennis

    Oje, ich habe die Sache leider falsch verstanden. Jetzt ist alles klar, aber ich bevorzuge dann doch lieber ShortCodes. ;)

  14. 14
    Kommentar von Tim

    Wieder eine sehr interessante Lösung!
    Ich fände es noch flexibler, wenn ich einen Filter hätte, der beispielsweise nach dem ersten H2-Tag oder H3-Tag etwas einfügt (in Deinem Beispiel Werbung). Wer seine Artikel gut strukturiert könnte somit recht effektiv Werbung einblenden. Was hältst Du davon?

  15. 15
    Kommentar von Webdesign Rosenheim

    Ist eine sehr coole Idee :-) Sollte man (was ja öfter mal vorkommen kann) keinen "more" Link benötigen...
    Werde ich bei nächster Gelegenheit mal testen!
    Danke für die Anregung!
    Grüße aus Rosenheim

  16. 16
    Kommentar von Florian

    Sehr elegante Lösung, wäre nicht darauf gekommen, daß sich das so schön einfach und effektiv umsetzen läßt. Man muß nur um die Ecke denken, danke für den Hinweis!

  17. 17
    Kommentar von Iris

    Das ist mal eine klasse Idee. ich habe zwar zurzeit kein Projekt, wo ich es einsetzen kann, werd es aber auf jeden Fall bei Gelegenheit mal ausprobieren. Deine Seite bietet immer wieder tolle Anregungen :-)

    Viele Grüße
    Iris

  18. 18
    Kommentar von Tina

    Interessanter Code für einen Tag. Vielen Dank für die Hilfe.

  19. 19
    Kommentar von Justin

    Genau soetwas habe ich lange Zeit für mein Blog gesucht und habe es mit umständlichen Mitteln und Plugins geschafft, vielen Dank für den einfachen Code!

  20. 20
    Kommentar von Marco

    Interessant ist an dieser Stelle auch das Plugin von Ruud Hein, das einem ermöglicht, nach dem x-ten Absatz einen AdSense-Block einzubauen. Die Funktionsweise ist recht ähnlich (preg_match_all).

    Abgesehen vom möglicherweise gestörten Lesefluss ist nämlich gerade der inText-Bereich für einen Rectangle-Banner prädestiniert.

  21. 21
    Kommentar von Wed

    Die Idee finde ich sehr interessant und auch sehr gut. Wenn jemand erst einmal auf "more" klickt, dann schaut er sich auch erst recht die Werbung an. So verliert man zwar viele andere Besucher - auf der anderen Seite wird die Klickrate erhöht (denke ich)

  22. 22
    Kommentar von Birgit

    Ist das die einzige Möglichkeit für den more-Tag ? Ich meine schonmal einen anderen Code gesehen zu haben...

  23. 23
    Kommentar von ebook leser

    das ist eine super idee. ich habe nämlich seit gestern adsense auf meinen blog gemacht und wenn das über den more tag ginge, ist das natürlich sehr gut. gibt es da zufällig ein plugin, welches die idee umsetzt, denn technisch, naja da habe ich es nicht so drauf.

  24. 24
    Kommentar von Jan

    Danke für die sehr interessante Idee, ich werde mir in den nächsten Tagen einmal eine ähnliche Lösung für mein Drupal-basiertes Blog überlegen.

  25. 25
    Kommentar von Emil Endgut

    Super Ansatz, einfache Lösung.
    Werde ich gleich mal einbauen und ausprobieren. Endlich ist das Teil mal zu was nütze;)

  26. 26
    Kommentar von Michaela

    Wie würde die Zeile: "ersetze more-Tag mit eigenem Source" / preg_replace aussehen, wenn man den Adsense-Code durch Javascript mit dem more-tag ersetzen würde?

  27. 27
    Kommentar von Frank Bültge

    @Michaela: bleibt so, dein JS-Code muss der Variable $myAddContent zugeordnet werden

  28. 28
    Kommentar von SciFiKerl

    Danke für die Anregung - wenn man aber das more tag nicht verwendet, so kommt. logischerweise, auch kein Trenner in der Single = keine Werbeplatzierung.

    Aber gibt es eine Lösung, außer der manuellen, automatisch in der Mitte eines Artikels einen Werbecode einzubauen?

  29. 29
    Kommentar von Frank Bültge

    Letze Antwort auf diesen Usernamen, siehe Beitrag dazu und warm !
    Ja, gibt es - ist aber recht schwer sauber zu nutzen. Man muss das HTML filtern und bspw. nach dem 3 Absatz eine Werbung platzieren. Besser ist das Nutzen eines Shortcode für Werbung. Für beides gibt es im Blog Beiträge.

  30. 30
    Kommentar von Usenetter

    Danke an den Autor das ist doch mal ein super Artikel zu Wp, der Sinn macht und einem auch was neues vermittelt... ;-)

  31. 31
    Kommentar von Walter

    Vielen Dank für den Tipp. Ich werde den more-Tag mal ausprobieren^^

    Gibt es eigentlich noch andere Alternativen dazu?

  32. 32
    Kommentar von Ritchi

    Schöne Idee! Habe Code problemlos eingebunden und es funzt.....
    Besten Dank für den Code!

  33. 33
    Kommentar von Cujo

    Danke für den Code. Ich habe ihn bei mir eingebunden und er funktioniert einwandfrei :-D

  34. 34
    Kommentar von Thomas

    Dein Tipp ist wirklich gut und einfach umzusetzen. Wenn mein Blog umfangreicher wird und ich Adsense einbaue werde ich es so machen wie hier beschrieben. Abgespeichert habe ich mir die Seite schon einmal.
    Gruß und vielen Dank

  35. 35
    Kommentar von Robert

    der code ist super genial, passt toll, gerne wieder!

  36. 36
    Kommentar von Cujo

    Komisch, auf einem Blog hat es einwandfrei funktioniert, aber bei diesem hier wird nichts ersetzt: http://www.klarakick.de

    Kann es sein, dass die Ersetzung nicht bei allen Themes funktioniert?

  37. 37
    Kommentar von Jane

    Danke für den Code! Er funktioniert.
    Ich würde gerne noch eine zusätzliche Abfrage in die functions.php einbauen. Nur wenn der Besucher von einer Suchmaschine kommt, soll die Anzeige angezeigt werden. Stammuser sollen somit weniger Werbung gezeigt bekommen. Habe schon etwas versucht, leider hat es nicht geklappt.
    Jemand eine Idee, wie man das realisiert?

  38. 38
    Kommentar von Frank Bültge

    @Jane: schaue dir mein Landingsite plugin an, da ist sowas drin oder du nutzt einfach das Plugin und die Funktion daraus.

  39. 39
    Kommentar von Gerrry

    Sehr trickreich, werde so etwas Ähnliches testen um dynamisch Textbausteine in der Ausgabe eines oscommerce shops für Werbeartikel zu erzeugen.

Kommentar schreiben

Kommentarregeln: Bleib cool, kritisch ist in Ordnung, aber wenn du unhöflich bist, dann lösche ich deinen Kommentar. Bitte benutze deinen persönlichen Namen oder Initialen und nicht den Namen eines Unternehmens, dies würde als Spam gewertet und wird gelöscht. Der Zusammenhang zwischen Namen und URL sollte nicht offensichtlich auf Spam hindeuten! ♥ Ansonsten, vielen Dank für den Kommentar und viel Spaß mit meinem Blog.

E-Mail-Benachrichtigung bei weiteren Kommentaren.
Auch möglich: Abo ohne Kommentar.

Kommentar-Hilfe

händischer Spam:
Beachte die Kommentarregeln, jede Form von versuchtem Spam wird gelöscht. Warum und wieso steht in einem meiner Beiträge.

Bezug auf Textstellen:
Du kannst direkt bezug auf Textstellen im Beitrag nehmen. Dazu muss lediglich der Bereich im Artikel markiert werden; daraufhin erscheint ein Button, der den markierten Text in das Kommentarfeld übernimmt und als Zitat auszeichnet. Die Funktion ist nur bei aktivem JavaScript nutzbar.

xHTML:
Du kannst folgende Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <blockquote cite=""> <code> <pre> <em> <strong> <strike> <ul> <ul> <li>

Achte darauf, wenn du Code im Kommentar hinterlegen willst, dann muss der Code maskiert sein. Dann wird er nicht interpretiert. Der Code muss mit Hilfe von HTML-Entities dargestellt werden, d.h. dass man z.B. < als &lt; und > als &gt; einfügt.

E-Mail-Benachrichtigung bei neuen Kommentaren ?
Wenn der Haken in der Checkbox gesetzt ist, dann wirst du über neue Kommentare vie E-Mail informiert. Der Versand erfolgt nur, wenn du die URL in der Bestätigungs-E-Mail genutzt hast oder schon Abonnent hier im Blog bist.

Kommentar erscheint nicht:
Alle Kommentare werden manuell geprüft, freigegeben und nach Möglichkeit beantwortet. Bitte um etwas Geduld und Nachsicht.

Identifikationsbilder (Avatare):
Auf Gravatar.com kann man sich mit seiner E-Mail-Adresse registrieren und ein Bild hochladen, dann erscheint dieses Gravatar hier und in vielen weiteren Blogs.

Spamschutz:
Das Kommentarformular ist mit einem Spamschutz ausgerüstet. Solltest du diesen Artikel ohne JavaScript besuchen und kommentieren wollen, so muss du die Frage beantworten und das jeweilige Wort in das Textfeld eingeben.