Zum Hauptinhalt springen

Beiträge von Empfehlungen ausschließen (für Fortgeschrittene)

wp engage bietet mehrere Möglichkeiten für Publisher, bestimmte Beiträge von der Indexierung (und damit der Empfehlung) auszuschließen. Davon sind viele von Publishern direkt im Beitrag oder in den Settings einstellbar. Die Vorgehensweise dazu ist hier beschrieben.

In manchen Fällen wird jedoch eine komplexe Logik benötigt, wonach Beiträge anhand spezifischer einzelner Beitragseigenschaften (wie Metadaten, Kategorien, Tags, Taxonomien), oder einer beliebigen Kombination daraus von den Beitragsempfehlungen ausgeschlossen werden sollen.

Für diesen Fall bietet wp engage die Möglichkeit, die Ausschlüsse im PHP zu hinterlegen

Definition eines Schemas zum Ausschließen von Beiträgen

Die Regeln für Exclusions werden über den wp_engage_custom_post_exclusion_rules action-hook hinterlegt. Es wird eine Instanz des wp_engage_recommendation_exclusions Objekts erzeugt, über dessen Methoden dann Ausschlüsse gesetzt werden können (siehe nachfolgendes Beispiel):

add_action('wp_engage_custom_post_exclusion_rules', function () {
$exclusions = new wp_engage_recommendation_exclusions();

$exclusions->set_excluded_taxonomies([302]);
$exclusions->set_excluded_categories([14]);
$exclusions->set_excluded_tags([11, 12, 13, 14]);

$exclusions->update_exclusions();
});
Hinweis

Nach Anpassung der Exclusion-Regeln eine einmalige Neuindexierung stattfinden, so dass die neuen Regeln berücksichtigt werden können.

Ausschlüsse einzelner Posts

Es können auch Regeln definiert werden, die noch granularer als Taxonomien, Kategorien oder Tags gehen, und Posts individuell exkludieren (oder auch wieder inkludieren). Regeln dazu werden über den wp_engage_custom_single_post_exclusion_rules action-hook hinterlegt.

So führt folgendes Beispiel dazu, dass Posts ohne Beitragsbild von den Empfehlungen ausgeschlossen werden.

add_action('wp_engage_custom_single_post_exclusion_rules', function ($post_id) {
$exclusions = new wp_engage_recommendation_exclusions();
if (!has_post_thumbnail($post_id)) {
$exclusions->exclude_post($post_id);
}
});
Hinweis

Nach Anpassung der Exclusion-Regeln muss auch hier eine einmalige Neuindexierung stattfinden, so dass die neuen Regeln berücksichtigt werden können.

class wp_engage_recommendation_exclusions()

Die Klasse enthält sämtliche Methoden, mit denen Exclusions gesetzt und ausgelesen werden können.

setters

Mit nachfolgenden Methoden werden die Exclusions gesetzt

set_excluded_taxonomies

Argumente

  • Array mit Term IDs (egal welcher Taxonomie), deren Beiträge nicht empfohlen werden sollen.

Beispiel

$exclusions = new wp_engage_recommendation_exclusions();
$exclusions->set_excluded_taxonomies([104, 302]);
$exclusions->update_exclusions();

In diesem Beispiel werden Beiträge mit den Term IDs 104 und 302 von den Empfehlungen ausgeschlossen.

set_excluded_categories

Argument

  • Array mit Category IDs, deren Beiträge nicht empfohlen werden sollen.

Beispiel

$exclusions = new wp_engage_recommendation_exclusions();
$exclusions->set_excluded_categories([123, 145]);
$exclusions->update_exclusions();

In diesem Beispiel werden Beiträge mit den Category IDs 123 und 145 von den Empfehlungen ausgeschlossen.

set_excluded_tags

Argumente

  • Array mit Tag IDs, deren Beiträge nicht empfohlen werden sollen.

Beispiel

$exclusions = new wp_engage_recommendation_exclusions();
$exclusions->set_excluded_tags([456, 678]);
$exclusions->update_exclusions();

In diesem Beispiel werden Beiträge mit den Tag IDs 456 und 678 von den Empfehlungen ausgeschlossen.

update_exclusions();

mit update_exclusions() werden die neu definierten Exclusions mit den bereits gespeicherten abgeglichen. Existiert eine Abweichung, werden die bestehenden Exclusions durch die neu definierten Exclusions vollständig ersetzt.

Wichtig!

Ohne update_exclusions() werden die definierten Exclusions nicht berücksichtigt.

exclude_post

Hiermit wird ein einzelner Post direkt aus den Empfehlungen entfernt. Das Setting ist identisch mit der Vorgehensweise im Beitrag, bei dem händisch ein Häkchen gesetzt wird.

Argumente

  • Integer mit einer Post ID, die nicht empfohlen werden soll

Beispiel

$exclusions = new wp_engage_recommendation_exclusions();
$exclusions->exclude_post(564);

In diesem Beispiel wird der Post mit der Post_ID 564 von den Empfehlungen ausgeschlossen.

Getters

Mit diesen Methoden können Informationen über Post-Ausschlüsse abgefragt werden:

is_excluded_post

Prüft nach, ob ein Beitrag von den Empfehlungen ausgeschlossen ist.

Argumente

  • Int $post_id die ID des Beitrags, bei dem geprüft werden soll, ob er exkludiert ist

Return

  • Bool - wahr wenn Post nicht empfohlen wird, falsch wenn er empfohlen wird

Beispiel

$exclusions = new wp_engage_recommendation_exclusions();
echo $exclusions->is_excluded_post(564);

get_excluded_categories

Return

Array mit category_ids, aus denen Beiträge nicht empfohlen werden

Beispiel

$exclusions = new wp_engage_recommendation_exclusions();
echo $exclusions->get_excluded_categories();

get_excluded_taxonomies

Return

Array mit taxonomy_ids, aus denen Beiträge nicht empfohlen werden

Beispiel

$exclusions = new wp_engage_recommendation_exclusions();
echo $exclusions->get_excluded_taxonomies();

get_excluded_tags

Return

Array mit tag_ids, aus denen Beiträge nicht empfohlen werden

Beispiel

$exclusions = new wp_engage_recommendation_exclusions();
echo $exclusions->get_excluded_tags();