2WordPress的标志固定的微观丰富网页摘要测试工具

以上 2 几年前,我发表了关于如何解决与WordPress主题问题的文章而没有通过谷歌式摘要测试工具. Since then lots has changedWordPress and most themes have better support, HTML5和CSS3已经抵达, 和谷歌, 雅虎和Bing聚在一起,决定将重点放在微观数据, 通过schema.org. 当时微似乎标记网页的最简单方法, 和测试工具已经为这些最全面的支持. 此举微观数据及其变化到WordPress需要一个新的文章: 这是它!

而不必为很多不同的主题,不同的文章中,我决定尝试提供的所有信息 1 指导. 这使得更容易保持最新, 并表示有刚 1 中央点所有的请求和讨论. 这也使得更多的意义,因为几个步骤是一样的,不管你用的是什么主题. 我不打算在本文中介绍的所有可选配置, 只是基础知识让您的网站与工具来验证. 一旦你管理,你应该找到添加额外的标记相对容易. So lets get started

从谷歌的个人资料将链接添加到您的网站

你会看到 我的谷歌+的个人资料 我有一个公共链接 https://diymediahome.orgyou will need the same for your own site. 理想情况下,你需要所有的作者有链接到你的网站以同样的方式,因为这一个谷歌个人资料.

  1. 登录到您的 谷歌个人资料
  2. 向下滚动,直到看到 链接 部朝向页面底部右边某处
  3. 点击 编辑 链接
  4. 根据 贡献者 部分点击 添加自定义链接
  5. 确保选中的文本的权利 贡献者 被设置为
  6. 输入您的网站名称 (e.g. DIY 媒体主页) 和地址 (e.g. https://diymediahome.org)
  7. 点击保存

添加从您的网站链接到您的谷歌个人资料

现在,我们需要从作者网页链接添加到您的谷歌个人资料. 有 2 另一种方式来做到这一点, 我强烈建议使用Yoast 插件.

  1. 安装 Yoast 插件 下面的代码添加到您的主题functions.php文件
    功能update_contactmethods( $contactmethods ) {
    // 加入谷歌简介
    $ contactmethods[“推土机,'] ='谷歌';
    // Add Twitter
    $contactmethods['叽叽喳喳'] = __( “Twitter用户名 (不带@)“, “WordPress的搜索引擎优化” );
    
    返回$ contactmethods;
    }
    的add_filter( “user_contactmethods”, “update_contactmethods”, 10, 1);
  2. 转到您的个人资料的作者在WordPress管理界面 (笼罩 用户 在左侧菜单, 并点击 你的个人资料)
  3. Google+的 字段添加一个链接到您的个人资料谷歌 (e.g. https://plus.google.com/104657888470728381512 /)
  4. 确保任你, 或者您的其他网站的作者做同样的事情, 每个链接到您自己的谷歌配置文件
  5. 现在, 如果您使用的Yoast插件, 进入 菜单并选择 标题和METAS, Ç舔上 在页面的顶部,并在菜单中 作者高亮 下拉框中选择用户要作为网页的作者使用
  6. 如果你坚持不移不使用Yoast插件,你将需要手动添加以下代码的header.php (假设你有一个). Don’t forget to change my google profile url to yours. This code will use the post author’s google profile url if there is a valid one, 并且将使用默认 (你的) 如果不存在.
    <链接相对="作者" HREF ="<?PHP的$提防欺骗行为。='https的://plus.google.com/115369062315673853712/posts“; 如果 ( is_singular() ) {全球$岗位; $提防欺骗行为。= get_the_author_meta( “推土机,', $后>post_author );} 回声$提防欺骗行为。; ?>"/>

Fix errors of a missing “更新” 场

大多数WordPress主题包括时后公布在后信息面积约资料, 但是当它最后一次更新也很少有. 这是一个遗憾, 因为更新是必需的,而实际公布的是不! 加入很容易,虽然, 并再次, 有 2 途径, 正确的方式和快速的破解方法. 我建议,当然适当的方式, 但如果需要的话可以诉诸快速破解. 我们也将在同一时间从微格式更改为微观数据.

有道

我们要添加一些额外的信息发布标题, 无论是搜索引擎和我们的观众. 我们需要做上岗, 网页, 档案和主页.

  1. 我们需要找到包含产生已发布链接的代码的文件. 这几乎肯定会使用WordPress的功能 get_the_date(). 您可以通过您的主题文件搜索, 或者参考主题具体细节如下,我已经提供了详细信息大量主题
  2. 我们要检查是否已发布和更新日期相同. 如果他们是我们将只需要添加额外的 dateUpdated itemprop但如果它们是不同的,我们将输出一些额外的文本访问者
  3. 我们要添加以下 (并修改它,因为它解释)
    <?如果PHP的(get_the_date()== get_the_modified_date()): ?>
    
    //we're going to use the original code just with the updated class added
    //put your theme's original code here
    //remove any class=""
    //add itemprop="datePublished dateCreated dateModified" to the HTML tag surrounding the get_the_date() 功能
    
    <?php else: ?>
    
    //we're going to use slightly code just with the updated date added
    //copy your theme's original code to here and then modify it as below
    //remove any class=""
    //add itemprop="datePublished dateCreated" to the HTML tag surrounding the get_the_date() function
    //add in a new html tag into the line where you want it to appear as below
    //Updated <?php echo get_the_modified_date() ?>
    
    <?php endif; ?>
  4. 你要么必须弄清楚原来的主题的代码和编辑, 或者参考下面特定主题的细节.
  5. 您可能需要重复此编辑多个文件

快速破解

我们要欺骗并提供发表日期作为更新日期, 即使后实际上已被最近更新. 如果后已更新然后我们实际上提供的信息不正确, 但它仍然将验证. 这真的是更好地正确,如果有可能做到这一点, 但如果你这样做是坚持阅读这种方式. 正如上面我们需要做这个职位, 网页, 档案和主页.

  1. 如上述,我们需要找到包含产生已发布链接的代码的文件. 这几乎肯定会使用WordPress的功能 get_the_date(). 您可以通过您的主题文件搜索, 或者参考下面的表格,我已经提供了详细信息大量的主题
  2. 找到 HTML 围绕日期元素 (常常将有 class="published").
  3. 通过除去类和添加,而不是以下编辑元件 itemprop="datePublished dateCreated dateUpdated"
  4. 正如上文, 您可能需要重复此编辑多个文件

更换内置微 (由于混合式摘要格式打破东西)

默认情况下WordPress是仍然使用微标记征求意见, 这可悲的是,似乎打破东西像食谱微观数据的标记. 解决这个问题的最好办法是删除微格式标记和使用微标记替换. 不幸, 产生这种标记WordPress的核心功能没有便利过滤器或钩所以这需要一些修修补补的左右.

在评论部分更换电子名片

  1. 我们现在要做的是使用注释回调更改注释输出. 许多主题已经使用回调,我们可以修改, 而对于那些基于wordpress的默认不,我们将增加一个
  2. Check if you theme already has a comment callbacksearch your theme files for the function wp_list_comments. 如果它包括代码 callback= 或者 'callback' => 那么它使用它,你应该能够找到一个回调 (大概的functions.php) 通过寻找回调函数的名称, 这是继等号(=)或箭头部分, e.g. wp_list_comments( array( 'callback' => 'twentyten_comment' ) ); 或者 wp_list_comments('type=comment&callback=bones_comments');. 如果它不那么我们将需要通过添加补充 callback=diymh_comment 或者 array( 'callback' => 'diymh_comment' ) 到行.
  3. 如果您需要添加评论回调,那么你将需要添加下面的代码添加到functions.php
    function diymh_comment($评论, $ARGS, $depth) {
    $GLOBALS['评论'] = $comment; ?>
    <那 <?php comment_class(); ?> id="li-comment-<?php comment_ID() ?>">
      <DIV ID ="comment-<?php comment_ID(); ?>">
    <DIV CLASS ="comment-author novcard">
    <?php echo get_avatar($评论,$size='48',$default='<path_to_url>“ ); ?>
    
    <?PHP的printf(__(“<cite class="FN">%s</cite> <跨度类="says">says:</跨度>“), get_comment_author_link()) ?>
    </DIV>
    <?如果PHP的 ($comment->comment_approved == '0') : ?>
    <em><?php _e('Your comment is awaiting moderation.') ?></em>
    <BR />
    <?php endif; ?>
    
    <DIV CLASS ="comment-meta commentmetadata"><A HREF ="<?php echo htmlspecialchars( get_comment_link( $comment->comment_ID ) ) ?>"><?PHP的printf(__('%1$s at %2$s'), get_comment_date(),  get_comment_time()) ?></一><?php edit_comment_link(__(“(编辑)“),'  ','') ?></DIV>
    
    <?php comment_text() ?>
    
    <DIV CLASS ="回复">
    <?php comment_reply_link(array_merge( $ARGS, 排列('depth' => $depth, 'max_depth' => $ARGS['max_depth']))) ?>
    </DIV>
      </DIV>
    <?PHP
    }
  4. 你会发现,这段代码有 class="novcard" 代替原有的 class="vcard".
  5. 如果您的主题确实有它自己的回调,你需要找到回调函数和替换的所有实例 class="vcard"class="novcard"

在头替换hfeed

  1. 下一个, 我们还需要删除的任何实例 class="hfeed", 其通常在header.php中发现. 更换所有出现 hfeednohfeed

更换hentry和标题丰富网页摘要

  1. 我们可以更换一对夫妇的整洁功能这些元素添加到的functions.php
    function diymh_replace_hentry($classes){
    如果(($key = array_search('hentry', $classes)) !== false) $classes[$关键]='nohentry';
    return $classes;
    }
    的add_filter('post_class','diymh_replace_hentry');
    
    function diymh_microdata_title($标题) {
        回归“<span itemprop="姓名">'.$title.'</跨度>“;
    }
    的add_filter('the_title', 'diymh_microdata_title', 10, 2);

添加信息的类型 (e.g. 文章, 食谱, 等等) 文章标题

  1. 第一, decide what type of work you are publishingmost likely an article. 看看在列表 schema.org
  2. 找到 HTML 标签包含功能 post_class()
  3. 添加代码 itemscope itemtype="https://schema.org/Article" (更换文章,如果你选择了一个不同类型的工作)

最后, 以避免破坏任何样式

  1. 你将需要编辑你的主题的style.css并做了查找/替换操作替换的所有实例 .vcard.novcard 和替换的所有实例 .hfeed.nohfeed 使我们的改变不会搞砸任何 CSS 我们的意见造型

修复任何其他错误

任何其他必要的更改将在下面的每个主题的基础上详细. 如果你有一个主题,你是无法修复,请发表评论. 如果它是一个免费的主题,请让我知道的主题名称, 如果它是一个溢价主题,请让我知道,所以我可以为你提供一个电子邮件地址发送一个压缩副本.

主题具体细节

只是在进行之前,这些编辑不会忘记携带到您的谷歌个人资料和你的网站相互链接的步骤, 并安装Yoast , 或者添加上面的代码提供.

 

二十年 1.5

在functions.php文件替换此

function twentyten_posted_on() {
printf的( __( “<跨度类="%1$s">Posted on</跨度> %2$s <跨度类="meta-sep">经过</跨度> %3$S', 'twentyten' ),
'meta-prep meta-prep-author',
sprintf( “<A HREF ="%1$s" 标题="%2$s" 相对="bookmark"><跨度类="入门日期">%3$s</跨度></一>“,
get_permalink(),
esc_attr( get_the_time() ),
get_the_date()
),
sprintf( “<跨度类="作者电子名片"><一类="网址FNÑ" HREF ="%1$s" 标题="%2$s">%3$s</一></跨度>“,
get_author_posts_url( get_the_author_meta( 'ID' ) ),
esc_attr( sprintf( __( 'View all posts by %s', 'twentyten' ), get_the_author() ) ),
get_the_author()
)
);
}

与此

function twentyten_posted_on() {
如果(get_the_date()== get_the_modified_date()){
printf的( __( “<跨度类="%1$s">Posted on</跨度> %2$s <跨度类="meta-sep">经过</跨度> %3$S', 'twentyten' ),
'meta-prep meta-prep-author',
sprintf( “<A HREF ="%1$s" 标题="%2$s" 相对="bookmark"><span itemprop="datePublished dateCreated dateModified">%3$s</跨度></一>“,
get_permalink(),
esc_attr( get_the_time() ),
get_the_date()
),
sprintf( “<跨度类="作者电子名片"><a itemprop="作者" HREF ="%1$s" 标题="%2$s">%3$s</一></跨度>“,
get_author_posts_url( get_the_author_meta( 'ID' ) ),
esc_attr( sprintf( __( 'View all posts by %s', 'twentyten' ), get_the_author() ) ),
get_the_author()
)
);
}
其他{
printf的( __( “<跨度类="%1$s">Posted on</跨度> %2$s <跨度类="meta-sep">经过</跨度> %3$s.  更新 <span itemprop="dateModified">%4$s</跨度>.“, 'twentyten' ),
'meta-prep meta-prep-author',
sprintf( “<A HREF ="%1$s" 标题="%2$s" 相对="bookmark"><span itemprop="datePublished dateCreated">%3$s</跨度></一>“,
get_permalink(),
esc_attr( get_the_time() ),
get_the_date()
),
sprintf( “<跨度类="作者电子名片"><a itemprop="作者" HREF ="%1$s" 标题="%2$s">%3$s</一></跨度>“,
get_author_posts_url( get_the_author_meta( 'ID' ) ),
esc_attr( sprintf( __( 'View all posts by %s', 'twentyten' ), get_the_author() ) ),
get_the_author()
),
get_the_modified_date()
);
}
}

在functions.php文件替换此

<DIV CLASS ="comment-author vcard">

与此

<DIV CLASS ="comment-author novcard">

在header.php文件替换此

<DIV ID ="wrapper" CLASS ="hfeed">

与此

<DIV ID ="wrapper" CLASS ="nohfeed">

在loop.php (3 实例), 环的single.php, 环page.php和环路attachment.php替换此

<DIV ID ="后<?php the_ID(); ?>" <?php post_class(); ?>>

与此

<DIV ID ="后<?php the_ID(); ?>" <?php post_class(); ?> itemscope itemtype="https://schema.org/Article">
二十一 1.5

coming very soon

Annotum基地 1.1.1

在 7 档 (功能特性,articles.php, 摘录类型article.php, 摘录摘录,default.php, 内容类型article.php, 内容 page.php, 内容内容default.php, 内容文章,pdf.php) 更换

<文章 <?php post_class('article-full'); ?>>

<文章 <?php post_class('article-full'); ?> itemscope itemtype="https://schema.org/Article">

 

你怎么看? 请给我们一个评论如下! 如果您想订阅,请使用菜单上的订阅链接右上方. 您还可以通过使用下面的链接社会分享这与你的朋友. 干杯.

Leave a Reply to 艾森伯格 取消回复

2 条评论