Ich muss benutzerdefinierte Daten an einen Filter übergeben, der von einem Plugin eines Drittanbieters bereitgestellt wird. Alle Möglichkeiten, die ich gesehen habe, sind wirklich kompliziert und schwer, meinen Kopf herumzuwickeln.
Nehmen Sie dieses Beispiel:
$score = 42; //Some crazy calculation I don't want to repeat.
function add_score_to_title($title) {
return 'Quiz Results (' . $score . '/') - ' . $title;
}
add_filter( 'aioseop_title_single', 'add_score_to_title');
Wie kann ich die $score
Variable übergeben add_score_to_title()
?
Am Ende habe ich meine Variable zum globalen $wp
Objekt hinzugefügt . Am Ende haben Sie also Folgendes:
global $wp;
$score = 42; //Some crazy calculation I don't want to repeat.
$wp->some_random_name_for_score = $score;
function add_score_to_title($title) {
global $wp;
$score = $wp->some_random_name_for_score;
return 'Quiz Results (' . $score . '/') - ' . $title;
}
add_filter( 'aioseop_title_single', 'add_score_to_title');
Schmutzig? Könnte sein. Einfach? Jep! Irgendwelche Nachteile dieser Technik? Bitte diskutiere.
UPDATE Hier ist der vollständige Code -> http://pastebin.com/fkSXY04m
$score
wird berechnet, indem ein Array von Dingen durchlaufen und eine Variable inkrementiert wird. pastebin.com/fkSXY04m