给wordpress添加关键词与描述
Wordpress网站的关键字及网页描述关系网站对搜索引擎的友好程度,如果自己手动加显然太折腾了,那如何让WordPress博客自动为每篇文章自动关键字及网页描述。每篇文章的内容不同,我们该如何让wordpress自动添加文章描述和关键词呢?下面就让我们来看看如何给wordpress自动添加文章描述和关键词。
重构:首页,分类页,文章页,单页,搜索页面,标签页,专题,快讯页,作者页,404等
第一种:
在你主题的functions.PHP文件添加以下代码,各个代码的功能解析如下:
add_action ( 'wp_head', 'wp_keywords' ,1 ); // 添加关键字
add_action ( 'wp_head', 'wp_description' ,1 ); // 添加页面描述/**+----------------------------------------------------------* 站点关键字+----------------------------------------------------------* @return string+----------------------------------------------------------*/
function wp_keywords() {global $s, $post;$keywords = '';if (is_single ()) { //如果是文章页,关键词则是:标签+分类IDif (get_the_tags ( $post->ID )) {foreach ( get_the_tags ( $post->ID ) as $tag )$keywords .= $tag->name . ', ';}foreach ( get_the_category ( $post->ID ) as $category )$keywords .= $category->cat_name . ', ';$keywords = substr_replace ( $keywords, '', - 2 );} elseif (is_home ()) {$keywords = '我是主页关键词'; //主页关键词设置} elseif (is_tag ()) { //标签页关键词设置$keywords = single_tag_title ( '', false );} elseif (is_category ()) {//分类页关键词设置$keywords = single_cat_title ( '', false );} elseif (is_search ()) {//搜索页关键词设置$keywords = esc_HTML ( $s, 1 );} else {//默认页关键词设置$keywords = trim ( wp_title ( '', false ) );}if ($keywords) { //输出关键词echo "<meta name=\"keywords\" content=\"$keywords\" />\n";}
}/**+----------------------------------------------------------* 站点描述+----------------------------------------------------------* @return string+----------------------------------------------------------*/
function wp_description() {global $s, $post;$description = '';$blog_name = get_bloginfo ( 'name' );if (is_singular ()) { //文章页如果存在描述字段,则显示描述,否则截取文章内容if (! empty ( $post->post_excerpt )) {$text = $post->post_excerpt;} else {$text = $post->post_content;}$description = trim ( str_replace ( array ("\r\n","\r","\n"," "," " ), " ", str_replace ( "\"", "'", strip_tags ( $text ) ) ) );if (! ($description))$description = $blog_name . "-" . trim ( wp_title ( '', false ) );} elseif (is_home ()) {//首页显示描述设置$description = $blog_name . "-" . get_bloginfo ( 'description' ) .'首页要显示的描述'; // 首頁要自己加} elseif (is_tag ()) {//标签页显示描述设置$description = $blog_name . "有关 '" . single_tag_title ( '', false ) . "' 的文章";} elseif (is_category ()) {//分类页显示描述设置$description = $blog_name . "有关 '" . single_cat_title ( '', false ) . "' 的文章";} elseif (is_archive ()) {//文档页显示描述设置$description = $blog_name . "在: '" . trim ( wp_title ( '', false ) ) . "' 的文章";} elseif (is_search ()) {//搜索页显示描述设置$description = $blog_name . ": '" . esc_html ( $s, 1 ) . "' 的搜索結果";} else {//默认其他页显示描述设置$description = $blog_name . "有关 '" . trim ( wp_title ( '', false ) ) . "' 的文章";}//输出描述$description = mb_substr ( $description, 0, 220, 'utf-8' ) . '..';echo "<meta name=\"description\" content=\"$description\" />\n";
}
第二种:
//Title标题
function bzg_filter_title( $title ) {$title['site'] = '';$title['tagline'] = '';$title['page'] = '';return $title;
}
add_filter( 'document_title_parts', 'bzg_filter_title', 10, 1 );function bzg_seo_title() {global $cat, $tag_id, $page, $paged;$page_num = '';if ( $paged >= 2 || $page >= 2 )$page_num = '_' . sprintf( '第%s页', max( $paged, $page ) );$title = wp_get_document_title();if( is_author() )$title = '作者:' . $title;if( is_category() && get_term_meta( $cat , 'seo_title', true ) )$title = get_term_meta( $cat , 'seo_title', true );if( is_tag() && get_term_meta( $tag_id , 'seo_title', true ) )$title = get_term_meta( $tag_id , 'seo_title', true );if ( ! is_home() ) {$title .= $page_num . ' - ';$title .= get_option('blogname');} else {$description = get_option( 'blogdescription' );$home_title = get_option( 'home_title' );if ( $home_title ) {$title = $home_title;} elseif($description) {$title .= ' - ' . $description;}$title .= $page_num;}return $title;
}function bzg_seo_keywords() {global $post;$keywords = '';if ( is_home() )$keywords = get_option( 'home_keywords' );if ( ( is_category() || is_tag() ))$keywords = single_cat_title('', false);if ( is_single() || is_page() ) {if ( $post->post_excerpt ) {$keywords = $post->post_excerpt;} else {$keywords = $post->post_title;}}return $keywords;
}//Description标签
function bzg_seo_description() {global $post;$description = '';if ( is_home() )$description = get_option( 'home_description' );if ( ( is_category() || is_tag() ) && category_description() )$description = wp_strip_all_tags( category_description(), true );if ( is_single() || is_page() ) {if ( $post->post_excerpt ) {$description = $post->post_excerpt;} else {$description = mb_strimwidth(esc_html(wp_strip_all_tags($post->post_content, true)), 0, 200);}}return $description;
}
header.php 调用:
<head><title><?php echo bzg_seo_title(); ?></title><?php$bzg_keywords = bzg_seo_keywords();if (!empty($bzg_keywords)) {echo '<meta name="keywords" content="' . $bzg_keywords . '" />';echo "\n";}$bzg_description = bzg_seo_description();if (!empty($bzg_description)) {echo '<meta name="description" content="' . $bzg_description . '" />';echo "\n";}?><?php if (is_home()) : ?><?php endif; ?></head>
相关文章:
给wordpress添加关键词与描述
Wordpress网站的关键字及网页描述关系网站对搜索引擎的友好程度,如果自己手动加显然太折腾了,那如何让WordPress博客自动为每篇文章自动关键字及网页描述。每篇文章的内容不同,我们该如何让wordpress自动添加文章描述和关键词呢?下…...
Verilog 入门
Verilog 入门 本内容来自 牛客网Verilog入门特别版 1、一个没有输入和一个输出常数1的输出的电路,输出信号为one module top_module(one);output wire one;assign one 1b1; endmodule2、创建一个具有一个输入和一个输出的模块,其行为类似于电路上的连…...
shell 简单且常用的几种
目录 一、配置环境的shell脚本 二、系统资源脚本 一、要求 二、脚本内容 三、脚本解析 四、赋权并验证 三、查看当前内存的总大小、实际使用大小、剩余大小、显示使用率百分比的脚本 一、第一种方法 二、验证 三、第二种方法 四、验证 四、查看网卡实时流量脚本 一…...
redis基本介绍以及在node中使用
文章目录 引言一、什么是redis1. redis简介2. redis的特点3. redis的应用场景 二、redis在windows下安装1. 下载安装2.验证是否安装成功3. 配置环境变量 三、redis-cli常用命令介绍1. redis-cli2. keys *3. set key value4. get key5. exists key6. del key7. info8. flushdb9.…...
React Native 文本输入基础知识
在 React Native 中提供了一个文本输入组件TextInput。此组件主要是监听键盘输入事件,并把对应的输入值显示在组件中,此组件还提供了很多功能配置参数,例如自动更正、自动大写、占位符文本和不同的键盘类型(例如数字键盘ÿ…...
qt显示图片并转换成灰度图及伪彩图
写了个程序,可在途图片,并切换成灰度图及伪彩图显示,主要代码如下: #include "mainwindow.h" #include "ui_mainwindow.h"MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainW…...
oj在线编程输入输出
练习地址:校招笔试真题_C工程师、golang工程师_牛客网 1.读取多行内容 输入描述: 输入包括两个正整数a,b(1 < a, b < 1000),输入数据包括多组。 输出描述: 输出ab的结果输入例子: 1 5 10 20 输出例子: 6 30imp…...
【LeetCode 算法】Add Two Integers 两整数相加-位运算
文章目录 Add Two Integers 两整数相加问题描述:分析代码递归 Tag Add Two Integers 两整数相加 问题描述: 给你两个整数 num1 和 num2,返回这两个整数的和。 − 100 < n u m 1 , n u m 2 < 100 -100 < num1, num2 < 100 −1…...
企业网络日志安全与 EventLog Analyzer
企业的网络日志安全是一项至关重要的任务。随着信息技术的迅猛发展,网络攻击和数据泄露的威胁也与日俱增。为了应对这些威胁,企业需要强大的工具来监控、分析和保护其网络日志。而ManageEngine的EventLog Analyzer正是这样一款卓越的解决方案。 网络日志…...
清风数学建模——拟合算法
拟合算法 文章目录 拟合算法概念 确定拟合曲线最小二乘法的几何解释求解最小二乘法matlab求解最小二乘法如何评价拟合的好坏计算拟合优度的代码 概念 在前面的篇幅中提到可以使用插值算法,通过给定的样本点推算出一定的曲线从而推算出一些想要的值。但存在一些问题…...
单片机 (一) 让LED灯 亮
一:硬件电路图 二:软件代码 #include "reg52.h"#define LED_PORT P2void main() {LED_PORT 0x01; // 0000 0001 D1 是灭的 } #include "reg52.h" 这个头文件的作用:包含52 系列单片机内部所有的功能寄存器 三&#…...
c++——单例模式
c单例模式 1、概念: 单例模式确保一个类只有一个实例,并提供一个全局访问点以获取该实例。这通常通过让类的构造函数为私有,以防止外部直接实例化,然后提供一个静态方法来获取实例。 2、实现方法: 实现单例模式的主…...
C# 流Stream详解(2)——FileStream、BinaryReader、MemorySream、SreamReader等之间的关系
【文件流】 电脑上的文件有很多,文本文件、音频文件、视频文件、图片文件等,这些文件会被持久化存储在磁盘上,其本质都是一堆二进制数据。 FileStream用于读取二进制文件。电脑上的所有文件,不管是文本、音频、视频还是其他任意…...
【JavaSE】详解final关键字
在Java中,final可以用来修饰类、方法和变量。final修饰类,表示该类无法被继承,并且此类的设计已被认为很完美而不需要进行修改或扩展。final修饰类中的方法,表示不可以被重写;也就是把该方法锁定了,以防止继…...
问道管理:机器人概念走势活跃,新时达涨停,拓斯达、丰立智能等大涨
机器人概念17日盘中走势活跃,到发稿,拓斯达大涨18%,昊志机电涨近16%,丰立智能涨超13%,步科股份、优德精细涨超10%,新时达涨停,天玑科技、兆龙互联、中大力德涨逾9%。 消息面上,8月16…...
elementui 修改日期选择器el-date-picker样式
1. 案例: 2. css /* 最外层颜色 */ .el-popper.is-pure {background: url("/assets/imgList/memuBG.png") no-repeat;border: none;background-size:100% 100%}/* 日期 1.背景透明 */ .el-date-picker{background: transparent; }/* 日期 2.标题、左右图…...
自己实现 SpringMVC 底层机制 系列之-实现任务阶段 6-完成控制器方法获取参数-@RequestParam
😀前言 自己实现 SpringMVC 底层机制 系列之-实现任务阶段 6-完成控制器方法获取参数-RequestParam 🏠个人主页:尘觉主页 🧑个人简介:大家好,我是尘觉,希望我的文章可以帮助到大家,…...
数据可视化:图表绘制详解
数据可视化是一种将抽象的数字和数据转化为直观图形的技术,使数据的模式、趋势和关系一目了然。本文将详细介绍如何绘制各种类型的图表,包括柱状图、折线图、饼图、散点图和热力图等。 第一部分:图表类型和选择 1. 柱状图 柱状图是用于比较类…...
【中危】Apache Ivy<2.5.2 存在XXE漏洞 (CVE-2022-46751)
漏洞描述 Apache Ivy 是一个管理基于 ANT 项目依赖关系的开源工具,文档类型定义(DTD)是一种文档类型定义语言,它用于定义XML文档中所包含的元素以及元素之间的关系。 Apache Ivy 2.5.2之前版本中,当解析自身配置、Ivy 文件或 Apache Maven 的 POM 文件…...
C#使用自定义的比较器对版本号(编码)字符串进行排序
给定一些数据,如下所示: “1.10.1.1.1.2”, “1.1”, “2.2”, “1.1.1.1”, “1.1.3.1”, “1.1.1”, “2.10.1.1.1”, “1.1.2.1”, “1.2.1.1”, “2.5.1.1”, “1.10.1.1”, “1.10.2.1”, “1.11.3.1”, “1.11.12.1”, “1.11.11.1”, “1.11.3.1”, “1”, “…...
AI在日常生活中的应用:从语音助手到自动驾驶
文章目录 AI的定义和发展AI在日常生活中的应用1. **智能语音助手**2. **智能家居**3. **智能医疗**4. **自动驾驶** 代码示例:使用Python实现基于机器学习的图片分类AI的未来前景结论 🎉欢迎来到AIGC人工智能专栏~探索AI在日常生活中的应用 ☆* o(≧▽≦…...
Windows10查看图片的分辨率
文章目录 查看方法 查看方法 鼠标悬停在想查看分辨率大小的图片上,稍等那么零点几秒,就会弹出图片的分辨率信息,如图所示:...
Spring事务和事务传播机制(2)
前言🍭 ❤️❤️❤️SSM专栏更新中,各位大佬觉得写得不错,支持一下,感谢了!❤️❤️❤️ Spring Spring MVC MyBatis_冷兮雪的博客-CSDN博客 在Spring框架中,事务管理是一种用于维护数据库操作的一致性和…...
计算机视觉 -- 图像分割
文章目录 1. 图像分割2. FCN2.1 语义分割– FCN (Fully Convolutional Networks)2.2 FCN--deconv2.3 Unpool2.4 拓展–DeconvNet 3. 实例分割3.1 实例分割--Mask R-CNN3.2 Mask R-CNN3.3 Faster R-CNN与 Mask R-CNN3.4 Mask R-CNN:Resnet1013…...
ubuntu18.04复现yolo v8之CUDA与pytorch版本问题以及多CUDA版本安装及切换
最近在复现yolo v8的程序,特记录一下过程 环境:ubuntu18.04ros melodic 小知识:GPU并行计算能力高于CPU—B站UP主说的 Ubuntu可以安装多个版本的CUDA。如果某个程序的Pyorch需要不同版本的CUDA,不必删除之前的CUDA,…...
Redis三种模式——主从复制,哨兵模式,集群
目录 一、主从复制 1.1主从复制的概念 1.2Redis主从复制作用 1.2.1数据冗余 1.2.2故障恢复 1.2.3负载均衡 1.2.4高可用基石 1.3Redis主从复制流程 1.4部署Redis 主从复制 1.4.1.环境部署 1.4.2.所有服务器都先关闭防火墙 1.4.3.所有服务器都安装Redis 1.4.4修改Master主节点R…...
mysql8.0.31新增只读远程普通用户
在 MySQL 8.0.31 中,可以通过以下步骤新增只读远程普通用户: 1、使用 root 用户登录 MySQL 数据库。 mysql -u root -p 2、创建用户: CREATE USER username% IDENTIFIED WITH mysql_native_password BY password ; 其中,username…...
揭开路由协议隐藏的风险
路由协议在互联网和基于其的服务的运行中发挥着至关重要的作用。然而,许多这些协议的开发都没有考虑到安全问题。 例如,边界网关协议 (BGP) 最初并未考虑对等点之间发生攻击的可能性。过去几十年来,BGP 中的起源和路径验证已投入了大量工作。…...
图片因固定宽高被拉伸了?object-fit:一个神奇的属性
一、问题产生的场景 近期在完成项目开发时,测试人员针对漫画长图上传后的展示提出了一个界面优化的点,因为其特点是长,但是我们展示图片的区域是固定的,如果我们按照正常思路将图片的宽高写死,确实占位大小的问题解决了…...
客户案例:中圣科技—CAC2.0防范盗号威胁,加固安全防线
客户背景 中圣科技(江苏)股份有限公司(以下简称“中圣科技”),是一家以技术研发为驱动,以清洁能源核心成套装备和节能环保工程服务为支撑的科技创新型企业。其以南京为核心运营基地,与当地政府…...
wordpress站内301/qq刷赞网站推广
这一周我们小组进行了JSON转换和数据库动态转换以及用户界面的编写等工作,我负责编写用户查看发布信息界面和申请发布界面。遇到的问题有element ui的card组件分页和表单数据与页面数据一起传到后端。 发布信息以el-card的形式展现在页面上,结合el-r…...
哈尔滨电子网站建设/快速优化seo
http://blog.csdn.net/yerenyuan_pku/article/details/72620101 SVN是何物 SVN是Subversion的简称,是一款集中式的开源版本控制系统,因为有着明确的权限管理机制,所以为目前国内绝大多数的公司所使用。 何谓集中式:集中式核心在于…...
个人网站可以做网上支付吗/爱链接外链购买
文/曾响铃 2月23日,银监会发布《网络借贷资金存管业务指引》(以下简称《指引》),将通过资金存管机制,加强对网贷资金交易流转环节的监督管理。正如相关监管部门领导在会上指出,《指引》是监管层决心支持行业…...
网站建设怎么样让图片翻滚/怎么注册域名网址
我不明白的是bBar(a)。它是做什么的?律师怎么会拿a作为论据?这不意味着酒吧继承自a吗?Bar.Foo1Foo是什么?是否意味着Foo1是类Foo()的实例?当Foo1本身是一个对象时,我们如何访问它?b.arg.variabl…...
家居行业网站建设/网络广告策划的步骤
Description 草原上住着一群小松鼠,每个小松鼠都有一个家。时间长了,大家觉得应该聚一聚。但是草原非常大,松鼠们都很头疼应该在谁家聚会才最合理。 每个小松鼠的家可以用一个点 \((x,y)\) 表示,两个点的距离定义为点 \((x,y)\) 和…...
好看网站手机版/亚马逊关键词
1380. 矩阵中的幸运数 【简单题】【每日一题】 思路: 先找出每一行的最小值,存入集合list_r中,集合下标与行号对应;再找出每一列的最大值,存入集合list_c中,集合下标与列号对应。遍历矩阵每一个元素&#…...