私は、Joomla 2.5とK2 2.6.9を使ったこのサイトを持っています。はい、更新する必要があることはわかっていますが、この「安い」クライアントに伝えてください。それにもかかわらず、それは完璧に動作し、クライアントは何年もの間それで満足しています。
しかし、(少なくとも1つの「しかし」は常にありますよね?)FacebookでのK2アイテムの共有に問題があります!共有するアイテムのタイトルが間違っている場合や、共有するアイテムのメイン画像が表示されない場合があります。そのサイトではソーシャル共有プラグインを使用していませんが、SEF URL用のsh404SEFがあり、ソーシャル機能が有効になっています。ソーシャル共有は、K2アイテムを除く他のすべてのページで正常に機能します。そのため、K2がこれらの問題を引き起こすと確信しています。 K2カテゴリのオプションでは、K2のソーシャル機能をすべて無効にするようにしましたが、Open Graph DebuggerでK2アイテムの共有を確認すると、重複するOGタグが明確に表示されています。
K2のOpen Graphタグを無効にするにはどうすればよいですか?
最近、似たような問題が発生しました。それを修正するには、k2コアファイルの1つをハックする必要があります。
//Go to(windows style path) joomla root/components/com_k2/views/item/view.html.php
// and comment line from 445 to 455
/*
$document->setMetaData('og:url', $uri->toString());
$document->setMetaData('og:title', htmlspecialchars($document->getTitle(), ENT_QUOTES, 'UTF-8'));
$document->setMetaData('og:type', 'Article');
$facebookImage = 'image'.$params->get('facebookImage', 'Small');
if ($item->$facebookImage && JFile::exists(JPATH_SITE.$item->$facebookImage))
{
$image = substr(JURI::root(), 0, -1).str_replace(JURI::root(true), '', $item->$facebookImage);
$document->setMetaData('og:image', $image);
$document->setMetaData('image', $image);
}
$document->setMetaData('og:description', htmlspecialchars(strip_tags($document->getDescription()), ENT_QUOTES, 'UTF-8'));
*/
For joomla root/components/com_k2/views/latest/view.html.php
comment line from line 256 - 261
// Set Facebook meta data
/*
$document = JFactory::getDocument();
$uri = JURI::getInstance();
$document->setMetaData('og:url', $uri->toString());
$document->setMetaData('og:title', (K2_JVERSION == '15') ? htmlspecialchars($document->getTitle(), ENT_QUOTES, 'UTF-8') : $document->getTitle());
$document->setMetaData('og:type', 'website');
$document->setMetaData('og:description', strip_tags($document->getDescription()));
*/
For joomla root/components/com_k2/views/itemlist/view.html.php line 690 to 701
// Set Facebook meta data
/*
$document = JFactory::getDocument();
$uri = JURI::getInstance();
$document->setMetaData('og:url', $uri->toString());
$document->setMetaData('og:title', (K2_JVERSION == '15') ? htmlspecialchars($document->getTitle(), ENT_QUOTES, 'UTF-8') : $document->getTitle());
$document->setMetaData('og:type', 'website');
if ($task == 'category' && $this->category->image && strpos($this->category->image, 'placeholder/category.png') === false)
{
$image = substr(JURI::root(), 0, -1).str_replace(JURI::root(true), '', $this->category->image);
$document->setMetaData('og:image', $image);
$document->setMetaData('image', $image);
}
$document->setMetaData('og:description', strip_tags($document->getDescription()));
*/
私はこのソリューションをJoomlaWorksフォーラムで見つけました K2がOGタグを生成しないようにする とソリューションがリストするリンク Com_k2デフォルトのオープングラフの修正
ほとんど同じである3番目のオプションがあります- k2-and-setting-the-wrong-open-graph-description-meta-tag
それが役に立てば幸い。