我正在尝试向具有SSL认证的 wordpress网站中添加元属性。我将链接发送到Skype和whatsapp,og:image
无法正常工作。我尝试了很多插件,但没有插件直接将html代码插入到我的wordpress主题标题中,但仍然无法正常工作。任何人都可以帮助我指导合适的插件或wp代码来实现这一目标。预先感谢。
<meta property="og:site_name" content="Multi-functional Online Shopping Cart | 新山网店模板设计 " />
<meta property="og:url" content="https://mybizcart.com.my" />
<meta property="og:locale" content="en_US" />
<meta property="og:title" content="Home" />
<meta property="og:type" content="website" />
<meta property="og:image" content="https://mybizcart.com.my/logo.jpg" />
<meta property="og:image:secure_url" content="https://mybizcart.com.my/logo.jpg" />
<meta property="og:image:width" content="300" />
<meta property="og:image:height" content="300" />
答案 0 :(得分:3)
您打开的图形数据似乎工作正常(FB sharing debugger,iframely)。
这指向Skype的问题。 Skype将其链接元数据(包括图像)缓存在云中和计算机上。 on the Skype forums有说明清除本地缓存的说明,但您只需要等待云缓存更新即可。
当我在WhatsApp对话中输入链接时,图像按需要出现:
我怀疑Skype将很快跟进,这只是一个缓存问题。更新元数据时,我在Facebook和Twitter帖子中也遇到过类似的问题-根据我的经验,更改要完全传播可能需要一周的时间。
答案 1 :(得分:0)
您只需使用whatsapp共享
<a href="whatsapp://send?text=https://mybizcart.com.my/url_of_page/" target="_blank"><i class="fa fa-whatsapp fa-3x" aria-hidden="true"></i><span class="hidden-xs">whatsapp</span></a>
答案 2 :(得分:0)
首先,您可以在Social Debug上扫描URL,我已经扫描了URL并发现了您的排名为C的问题,因此请尝试将其设置为A。
同样,我们面临的同样的问题是我们浪费了将近一个星期的时间来弄清楚某个时间缓存或服务器超时会发生什么。
不要使用插件,因为它与您的代码输出是一个混搭,我们只是在您的function.php
文件末尾创建了一个简单的脚本
//Adding the Open Graph in the Language Attributes
function add_opengraph_doctype( $output ) {
return $output . ' xmlns:og="http://opengraphprotocol.org/schema/" xmlns:fb="http://www.facebook.com/2008/fbml"';
}
add_filter('language_attributes', 'add_opengraph_doctype');
//Lets add Open Graph Meta Info
add_action('wp_head', 'fc_opengraph');
function fc_opengraph() {
if( is_single() || is_page() ) {
$post_id = get_queried_object_id();
$url = get_permalink($post_id);
$title = get_the_title($post_id);
$site_name = get_bloginfo('name');
$description = wp_trim_words( get_post_field('post_content', $post_id), 25 );
$image = get_the_post_thumbnail_url($post_id);
if( !empty( get_post_meta($post_id, 'og_image', true) ) )
{
$image = get_post_meta($post_id, 'og_image', true);
} else {
$image = 'set your image URl here';
}
$locale = get_locale();
echo '<meta name="description" content="Put your website description here">';
echo '<meta property="og:locale" content="' . esc_attr($locale) . '" />';
echo '<meta property="og:type" content="article" />';
echo '<meta property="og:title" content="' . esc_attr($title) . ' | ' . esc_attr($site_name) . '" />';
echo '<meta property="og:description" content="' . esc_attr($description) . '" />';
echo '<meta property="og:url" content="' . esc_url($url) . '" />';
echo '<meta property="og:site_name" content="' . esc_attr($site_name) . '" />';
if($image) echo '<meta property="og:image" content="' . esc_url($image) . '" />';
// Twitter Card
echo '<meta name="twitter:card" content="summary" />';
echo '<meta name="twitter:site" content="@yourtwitterhandle" />';
echo '<meta name="twitter:creator" content="@yourtwitterhandle" />';
echo '<meta name="twitter:title" content="' . esc_attr($title) . ' | ' . esc_attr($site_name) . '" />';
echo '<meta name="twitter:description" content="' . esc_attr($description) . '" />';
echo '<meta name="twitter:image" content="' . esc_attr($image) . '" />';
}
}
答案 3 :(得分:0)
我似乎也遇到了Skype缓存问题,我通常向链接中添加一个随机查询字符串,例如https://mybizcart.com.my/?random-1234,以绕过缓存
答案 4 :(得分:-1)
您可以使用yoast插件。它为我解决了同样的问题。安装完成后,您可以访问其选项:“社交”->“ Facebook”,在那里您需要设置图像。设置默认图像后,您的问题将得到解决。