После изменения моей постоянной ссылки на WordPress мой счет в Facebook как-то не так

wordpress facebook facebook-like permalinks

169 просмотра

2 ответа

(У меня недостаточно репутации, чтобы публиковать ссылки, поэтому все http: // будут http: /)

Я изменил постоянную ссылку на WordPress с http: / siteurl /? P = number на http: / siteurl / number / slug

Я добавляю код в заголовок, чтобы сообщить Facebook старый почтовый адрес и новый почтовый адрес, как показано ниже

<?php if (is_single() || is_page() ) { 
        $urlidcheck = get_the_id();
            if($urlidcheck <= 85 ){ 
?>
              <meta property="og:url" content="http:/siteurl/?p=<?php the_ID(); ?>" />
             <link rel="canonical" href="http:/siteurl/?p=<?php the_ID(); ?>" >
      <?php } else { ?>
              <meta property="og:url" content="<?php get_bloginfo('url');  ?>" />
      <?php }  
      } 
?> 

После того, как я использую инструмент Sharing Debugger для очистки, он работает хорошо, но временно .

После извлечения все выбранные URL, Canonical URL и og: url, как показано ниже.

Полученный URL http: / siteurl / 47 / travel-seoul-running

Канонический URL http: / siteurl /? P = 47

свойство meta = og: url content = http: / siteurl /? p = 47

но показывает предупреждения, как показано ниже

[Circular Redirect Path] Обнаружен круговой путь перенаправления (подробности см. В разделе «Путь к перенаправлению»).

[Несоответствие og: url и канонического url] Тег og: url в заголовке не совпадает с URL-адресом ссылки rel = 'canonical' в html.

[Несоответствие анализатора метаданных] Результат синтаксического анализа для этих метаданных не соответствует входным метаданным. Вероятно, это было вызвано тем, что данные упорядочивались неожиданным образом, множественные значения были даны для свойства, ожидающего только одно значение, или значения свойств для данного свойства не совпадали. Вот входные свойства, которые не были видны в разобранном результате: 'og: locale: locale'

Через несколько дней счетчики типа fb внезапно обнуляются. Я использую инструмент Sharing Debugger для проверки, он показывает, что канонический URL-адрес ошибся, но og: url по-прежнему верен.

Полученный URL http: / siteurl / 47 / travel-seoul-running

Канонический URL http: / siteurl / 47 / travel-seoul-running

свойство meta = og: url content = http: / siteurl /? p = 47

также всплывающие предупреждения, как показано ниже

[Не удалось перейти по пути перенаправления] Использование данных из http: / siteurl /? P = 47, поскольку при пути перенаправления произошла ошибка.

[Circular Redirect Path] Обнаружен круговой путь перенаправления (подробности см. В разделе «Путь к перенаправлению»).

URL-адрес [Could Not Follow Redirect] запросил перенаправление HTTP, но за ним не последовало.

Так что я должен почистить руководство каждый пост каждые несколько дней, что очень утомительно.

Кто-нибудь может дать мне подсказку и инструкцию о том, как решить проблему? Огромное спасибо. И все равно спасибо за ваше время.

Автор: Creya Hsu Источник Размещён: 08.11.2019 11:07

Ответы (2)


0 плюса

Ты вроде как делаешь это задом наперед. И canonical, и og: url должны указывать на текущую версию URL, иначе вы получите ошибки. Когда они не соответствуют странице, на которой они находятся, они идут и получают ссылку, на которую ссылаются эти теги.

Таким образом, вы, по сути, говорите Facebook, чтобы он забрал старую версию ссылки. Как только они отправляются за этой версией, сервер отправляет перенаправление 301 обратно на новую версию ссылки. Новый ссылается на старый и создает бесконечный цикл или перенаправление назад и вперед для их скребка.

К сожалению, в большинстве социальных сетей, включая Facebook, после изменения настроек постоянной ссылки вы просто теряете количество своих акций, потому что теперь Facebook рассматривает их как совершенно новую ссылку.

Единственный способ обойти это - создать свои собственные кнопки общего доступа и использовать API Facebook для запроса количества акций. При запросе этих подсчетов через API вам нужно будет отправить два запроса, по одному для каждой версии ссылки, а затем сложить их вместе, прежде чем отобразить их.

Автор: Nicholas Cardot Размещён: 21.08.2016 10:58

0 плюса

Спасибо за ваши ответы, Николас и CBroe. Вы позволите мне заметить, что проблема должна быть вызвана каноническими и перенаправленными URL-адресами.

Я вернулся, чтобы проверить html-код в браузере, и обнаружил, что в теле есть еще один канонический URL, который только фиксирует постоянную ссылку в "http: / siteurl / number / slug", и я не знаю, из какого файла wordpress он получен.

Кроме того, я предполагаю, что когда я перешел на http: / siteurl /? P = 47, меня привели на http: / siteurl / 47 / travel-seoul-running. Это просто потому, что WordPress сам угадывает ближайший адрес. Это не совсем редирект.

Поэтому я устанавливаю два плагина «Плагин Canonical Seo Wordpress» и «Перенаправление». (Я знаю, что плагины не очень хороший метод. Но для меня это мгновенный способ увидеть, как решаются проблемы.)

«Плагин Canonical Seo Wordpress» помогает мне удалить существующий канонический URL, который мне не нужен. И я могу настроить канонический URL, который я хочу, для каждого поста на странице редактирования поста. (Но мне также потребовалось много времени для всех моих постов.)

Я также установил перенаправление 301 для каждого старого поста, который использовал http: / siteurl /? P = номер, на http: / siteurl / number / slug с плагином «Перенаправление».

Я изменил код в заголовке немного

<?php if (is_single() || is_page() ) { 
        $urlidcheck = get_the_id();
            if($urlidcheck <= 85 ){ 
?>
              <meta property="og:url" content="http:/siteurl/?p=<?php the_ID(); ?>" />
      <?php } else { ?>
              <meta property="og:url" content="<?php the_permalink() ?>" />
      <?php }  
      } 
?> 

место, где я положил FB, как поле

 <div class="fb-like" data-href="<?php the_permalink() ?>" data-layout="button_count" data-action="like" data-size="small" data-show-faces="false" data-share="true"></div>

Я использую инструмент Sharing Debugger для проверки как http: / siteurl / 47 / travel-seoul-running, так и http: / siteurl /? P = 47. Все они работают хорошо, получают правильные результаты, которые у меня есть, и показывают одинаковый результат в обеих постоянных ссылках.

Постоянная ссылка двух типов выглядит хорошо, а канонические URL-адреса верны. Я могу просто использовать the_permalink (), чтобы перехватить ссылку на FB и получить правильный результат.

Я все еще получаю одно предупреждение, которое называется [Circular Redirect Path]. Но похоже, что подобные показатели пока идут хорошо. Так что я оставлю это на одну неделю, буду следить и смотреть, как это работает.

Я вернусь с любым дальнейшим результатом. Еще раз спасибо

Автор: Creya Hsu Размещён: 23.08.2016 05:45
Вопросы из категории :
32x32