заменить строку в функции get_permalink ()?

Я изо всех сил пытаюсь переписать URL. До н.э. Facebook не выполняет 301 переадресацию для лайков (тьфу) Мне нужно найти способ переписать og:url Параметр wordpress выплевывает, чтобы получить http вместо https.

Я пытаюсь следующее безрезультатно:

<?php
$oldlink = get_permalink(get_the_id());
$newlink = str_replace('https', 'http', $oldlink);
?>
<meta property="og:url" content="<?php echo $newlink ?>"/>

Есть идеи, почему этот метод может не работать?

0

Решение

Если вы используете его в header.php и страница, которую вы загружаете — это один пост / страница / пользовательский пост, вы можете использовать the_post (); перед вашим заявлением, чтобы начать цикл.

<?php the_post(); ?>
<meta property="og:url" content="<?php $oldlink = get_permalink(get_the_id()); $newlink=str_replace('https','http',$oldlink); echo $newlink; ?>" />

Дело в том, что функция get_the_id () работает только внутри цикла, поэтому без ее инициализации она возвращает результаты сбоев, в результате чего функция get_permalink не возвращает ничего полезного.

Но будьте осторожны, если вы вызовете the_post позже на той же самой странице после первой, это может испортить вывод ваших данных. Поэтому обязательно вызывайте его только один раз для одной страницы (если вы не создаете пользовательский цикл курса).

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector