Mithilfe von YOAST ist es möglich die Produktbeschreibung als Meta-Description anzuzeigen. Das geht über den programmatischen Weg wie folgt:
Folgenden Code als Snippet in functions.php des Themes oder mithilfe eines Plugins einfügen.
// callback für Ersetzung in YOAST SEO
function get_fullDescription() {
global $post;
return $post != null ? $post->post_content : "";
}
// Registriere eigene YOAST-Variablenersetzung
function register_custom_yoast_variables() {
wpseo_register_var_replacement( '%%fulldes%%', 'get_fullDescription', 'advanced', 'Full Description' );
}
// YOAST-Variablenersetzung bekannt machen
add_action('wpseo_register_extra_replacements', 'register_custom_yoast_variables');
Danach unter WordPress -> SEO -> Darstellung in Suchergebnissen -> Produkte %%fulldes%% unter Meta description eintragen. Speichern nicht vergessen!

Nun wird aber die komplette Beschreibung verwendet. Schöner wäre jedoch die Längenvorgabe für Meta-Descriptions der Suchmaschinen zu beachten. Diese liegt bei maximal 160 Zeichen.
Dazu benötigen wir zwei weitere Funktionen. Mit der untenstehenden Funktion replaceHtmlTags ersetzen wir ggf. vorhandene HTML-Tags in der Beschreibung, denn die möchten wir in unserer Meta-Description nicht haben. Mit der zweiten Funktion wordTruncate erreichen wir die Längenvorgabe. Der Code sorgt dafür, dass nicht einfach nur nach 160 Zeichen getrennt wird und damit evtl. mitten im Wort abgeschnitten wird, sondern es wird nach dem letzten Wort abgeschnitten das noch innerhalb der 160 Zeichen liegt.
function replaceHtmlTags($string) {
return preg_replace("/<.*?>/", "", $string);
}
function wordTruncate($string, $desired_max_width) {
$parts = preg_split('/([\s\n\r]+)/u', $string, -1, PREG_SPLIT_DELIM_CAPTURE);
$parts_count = count($parts);
$length = 0;
$last_part = 0;
for (; $last_part < $parts_count; ++$last_part) {
$length += strlen($parts[$last_part]);
if ($length > $desired_max_width) { break; }
}
return implode(array_slice($parts, 0, $last_part));
}
Die Routine get_fullDescription aus dem Code oben wird nochmal etwas modifiziert und sieht damit so aus:
// callback für Ersetzung in YOAST SEO
function get_fullDescription() {
global $post;
return wordTruncate(replaceHtmlTags($post->post_content), 160);
}
Der vollständige Code sieht somit so aus:
// callback für Ersetzung in YOAST SEO
function get_fullDescription() {
global $post;
return wordTruncate(replaceHtmlTags($post->post_content), 160);
}
// Registriere eigene YOAST-Variablenersetzung
function register_custom_yoast_variables() {
wpseo_register_var_replacement( '%%fulldes%%', 'get_fullDescription', 'advanced', 'Full Description' );
}
// YOAST-Variablenersetzung bekannt machen
add_action('wpseo_register_extra_replacements', 'register_custom_yoast_variables');
function replaceHtmlTags($string) {
return preg_replace("/<.*?>/", "", $string);
}
function wordTruncate($string, $desired_max_width) {
$parts = preg_split('/([\s\n\r]+)/u', $string, -1, PREG_SPLIT_DELIM_CAPTURE);
$parts_count = count($parts);
$length = 0;
$last_part = 0;
for (; $last_part < $parts_count; ++$last_part) {
$length += strlen($parts[$last_part]);
if ($length > $desired_max_width) { break; }
}
return implode(array_slice($parts, 0, $last_part));
}
Somit haben wir ohne die kostenpflichtige YOAST SEO WooCommerce – Erweiterung erreicht, die Produktbeschreibung als Meta-Description anzuzeigen.
WooCommerce-Kurzbeschreibung als Meta-Description
Möchte man hingegen die Kurzbeschreibung als Meta-Description nutzen, bietet YOAST SEO die Funktion in der kostenfreien Version an, wenn auch etwas versteckt.
Um die Kurzbeschreibung als Meta-Description zu verwenden so tragen wir unter SEO -> Darstellung in Suchergebnissen -> Produkte die Variable %%wc_shortdesc%% ein.
Viel Erfolg bei Ihrem SEO-Projekt!
Haben Sie weitere Fragen oder benötigen Sie Unterstützung, gerne unterstütze ich Sie. Schreiben Sie mir ganz unverbindlich oder rufen Sie an.