WordPress headers_php 팁에서 중복 코드를 지우기 위해 PHP 스크립트를 작성하는 방법에 대한 설명

WBOY
풀어 주다: 2016-05-16 19:57:45
원래의
1494명이 탐색했습니다.

워드프레스 헤더에는 워드프레스 버전, 컨텍스트, 첫 번째 기사, 홈페이지 메타 정보 및 기타 중복 코드를 포함하여 많은 코드가 있으며 이는 블로거에게 의미가 없으며 웹 사이트 보안에 어느 정도 해를 끼칩니다. , 또한 이 코드가 무엇을 하는지, 어디서 왔는지, 어떻게 삭제하는지 몰랐습니다.

워드프레스 헤더 정리 코드는 다음과 같습니다
WordPress 헤더에 있는 많은 양의 중복 정보를 제외하고 function.php 파일의 헤더에 다음 코드를 삽입하세요

<&#63;php 
//remove_action( 'wp_head', 'wp_enqueue_scripts', 1 ); 
remove_action( 'wp_head', 'feed_links', 2 ); 
remove_action( 'wp_head', 'feed_links_extra', 3 ); 
remove_action( 'wp_head', 'rsd_link' ); 
remove_action( 'wp_head', 'wlwmanifest_link' ); 
remove_action( 'wp_head', 'index_rel_link' ); 
remove_action( 'wp_head', 'parent_post_rel_link', 10, 0 ); 
remove_action( 'wp_head', 'start_post_rel_link', 10, 0 ); 
remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0 ); 
//remove_action( 'wp_head', 'locale_stylesheet' ); 
remove_action( 'publish_future_post', 'check_and_publish_future_post', 10, 1 ); 
//remove_action( 'wp_head', 'noindex', 1 ); 
//remove_action( 'wp_head', 'wp_print_styles', 8 ); 
//remove_action( 'wp_head', 'wp_print_head_scripts', 9 ); 
remove_action( 'wp_head', 'wp_generator' ); 
//remove_action( 'wp_head', 'rel_canonical' ); 
remove_action( 'wp_footer', 'wp_print_footer_scripts' ); 
remove_action( 'wp_head', 'wp_shortlink_wp_head', 10, 0 ); 
remove_action( 'template_redirect', 'wp_shortlink_header', 11, 0 );
add_action('widgets_init', 'my_remove_recent_comments_style'); 
function my_remove_recent_comments_style() { 
 global $wp_widget_factory; 
 remove_action('wp_head', array($wp_widget_factory->widgets['WP_Widget_Recent_Comments'], 'recent_comments_style')); 
} 
&#63;>
로그인 후 복사

각 기능 설명:

wp_head 함수

wp_head()는 WordPress에서 매우 중요한 기능입니다. 기본적으로 모든 테마는 header.php 파일에서 이 기능을 사용하며, 많은 플러그인도 wp_head()를 사용하여 헤더에 무언가를 추가합니다. 관련 플러그인. 다만, wp_head()가 나타나는 곳에는 일반적으로 사용되지 않는 코드가 많이 추가될 것입니다. 이러한 코드는 Remove_action을 통해 제거할 수 있습니다.

remove_action 함수

함수 프로토타입:

remove_action( $tag, $function_to_add, $priority, $accepted_args );
로그인 후 복사

이 함수는 지정된 액션 후크에 연결된 함수를 제거합니다. 이 메소드는 특정 액션 훅에 첨부된 기본 기능을 제거하고 다른 기능으로 대체하는 데 사용할 수 있습니다. Remove_filter(), add_action() 및 add_filter()를 참조하세요.
중요: 후크를 제거할 수 있도록 후크를 추가할 때 $function_to_remove 및 $priority 매개 변수가 일치해야 합니다. 이 원칙은 필터와 작업에도 적용됩니다. 제거에 실패하면 경고가 표시되지 않습니다.
매개변수

  • $tag (string) (필수) 삭제하려는 함수가 연결되는 액션훅입니다. 기본값: 없음
  • $function_to_remove(콜백)(필수) 제거할 함수 이름 기본값: 없음
  • $priority(정수)(선택 사항) 기능 우선 순위(기능이 처음 연결될 때 정의됨) 기본값: 10
  • $accepted_args (정수) (필수) 함수에서 허용하는 인수 수입니다. 기본값: 1

반환값

  • (부울) 함수 제거 여부.
  • Ttue 기능이 성공적으로 제거되었습니다
  • False 기능이 제거되지 않았습니다

워드프레스 버전 제거

머리 부분에 다음 코드가 표시됩니다.

<meta name="generator" content="WordPress 3.1.2" />

로그인 후 복사

기본적으로 추가되는 숨겨진 워드프레스 버전 정보입니다. 해커가 WordPress의 특정 버전을 공격하기 위해 악용할 수 있는 취약점입니다. 코드 지우기:
remove_action( 'wp_head', 'wp_generator' );
로그인 후 복사

오프라인 편집기 오픈 인터페이스 제거

WordPress는 두 줄 오프라인 편집기를 위한 개방형 인터페이스를 자동으로 추가합니다

<link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://jb51.net/xmlrpc.php&#63;rsd" /> 
<link rel="wlwmanifest" type="application/wlwmanifest+xml" href="http://jb51.net/wp-includes/wlwmanifest.xml" />
로그인 후 복사


그 중 RSD는 일반화된 인터페이스이고 wlwmanifest는 Microsoft Live Writer 편집기용입니다. 오프라인 편집이 필요하지 않은 경우 제거할 수 있습니다. 오프라인 편집기를 사용해야 하는 경우에도 대부분의 경우 이 두 줄의 코드는 필요하지 않습니다. 라이브 작가는 그 자신을 알고 있습니다. 이 두 줄의 코드를 유지하면 보안 위험이 발생할 수 있습니다. 코드 지우기:

remove_action( 'wp_head', 'rsd_link' ); 
remove_action( 'wp_head', 'wlwmanifest_link' );
로그인 후 복사

컨텍스트, 첫 번째 기사, 홈페이지 메타 정보 제거

WordPress는 모든 컨텍스트, 첫 번째 기사 및 홈페이지 링크를 메타에 넣습니다. SEO에는 별로 도움이 되지 않는 것 같지만, 헤더 정보가 엄청나게 커집니다. 코드 제거:

remove_action( 'wp_head', 'index_rel_link' ); // Removes the index link 
remove_action( 'wp_head', 'parent_post_rel_link', 10, 0 ); // Removes the prev link 
remove_action( 'wp_head', 'start_post_rel_link', 10, 0 ); // Removes the start link 
remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0 ); // Removes the relational links for the posts adjacent to the current post.
로그인 후 복사

표준 표시 제거

2009년 2월, Google, Yahoo, Microsoft 3대 검색 엔진은 중복 콘텐츠 문제를 줄이기 위한 방법을 공동으로 출시했습니다. 이는 대부분의 웹마스터에게 더 이상 중복에 대해 걱정할 필요가 없다는 점입니다. 콘텐츠는 웹사이트 페이지의 무게에 영향을 미칩니다.
콘텐츠가 중복되는 데에는 여러 가지 이유가 있습니다. 가장 일반적인 이유는 여러 URL 주소가 동일한 페이지를 가리키는 것입니다. 예를 들어 WordPress 플랫폼의 블로그 페이지에는 기사와 댓글이 포함되어 있습니다. 각 댓글은 고정된 링크 주소를 가질 수 있습니다. 댓글이 여러 개인 경우 각 댓글의 링크는 commentID 번호가 다르다는 점을 제외하면 위 형식과 유사합니다. 스파이더가 크롤링하러 오면 순차적으로 다시 크롤링하게 됩니다. 이 글에 댓글이 10개 있으면 같은 페이지 글을 10번 크롤링하게 되는데, 이는 여러 번의 반복 작업을 수행하는 것과 같으며 크롤링 효율성과 대역폭에 심각한 영향을 미칩니다. 소비됩니다.
콘텐츠가 중복되면 스파이더가 크롤링을 꺼리게 됩니다. 동일한 페이지를 가리키는 다른 URL도 페이지의 무게에 영향을 미칩니다. 이러한 문제는 표준 태그를 통해 효과적으로 피할 수 있습니다.
두 가지 사항에 유의해야 합니다.

  • 다른 하위 도메인을 가리키는 것은 허용되지만 다른 도메인 이름은 가리킬 수 없습니다
  • 표준 속성을 전달할 수 있습니다

즉, 페이지 A는 B를 신뢰할 수 있는 링크로 선언하고 B는 C를 신뢰할 수 있는 웹페이지로 선언합니다. 그러면 C는 A와 B 모두에서 선호되는 신뢰할 수 있는 버전입니다.

WP 버전이 2.9 이전인 경우 플러그인(위에서 이미 언급함)을 통해 블로그 지원을 활성화하거나 테마의 header.php 파일을 수동으로 해킹해야 합니다.

<link rel="canonical" href="<&#63;php get_permalink()&#63;>" />
로그인 후 복사

在 WordPress 2.9 发布之后,WordPress 已经默认支持这一标签了,我们无需做任何动作,主题就支持这一标签。这对于文章固定链接的更改很有帮助,可以增加对搜索引擎的友好度。但是如果你觉得这个标签对你无用,也可以移除之:

remove_action( 'wp_head', 'rel_canonical' );
로그인 후 복사

移除feed

HTML 中通过

<link rel="alternate" type="application/rss+xml" title="feed名" href="http://jb51.net/feed/" />
로그인 후 복사

来指定博客feed。可以被浏览器检测到,然后被读者订阅。
如果你不想添加feed,或者想使用烧制的feed(如FeedSky或者Feedburner烧制的feed),可以移除之。

remove_action( 'wp_head', 'feed_links', 2 );//文章和评论feed 
remove_action( 'wp_head', 'feed_links_extra', 3 ); //分类等feed
로그인 후 복사

如果用的烧制的feed,然后还可以再手动添加feed地址。

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿