테마 사용자 지정을위한 10 개의 WordPress 스 니펫
WordPress를 사용하면 테마 덕분에 웹 사이트의 모양을 변경하는 것이 매우 쉽습니다. 무료 또는 프리미엄 가격으로 제공되는 WordPress Themes가 (전체 낱장처럼) 많이 있습니다. 테마를 선택하여 설치하고 몇 분 안에 완전히 새로운 모습을 얻을 수 있습니다..
그러나 룩앤필을 제공하는 것 외에도 WordPress 테마는 다양한 방식으로 확장 될 수 있습니다. 플러그인을 사용하여 새로운 기능을 구축 할 수 있지만이 게시물에서는 귀하의 테마에 도움이 될 수있는 WordPress 기능. 효과를 내기 위해서는 테마의 functions.php 파일에이 함수들을 넣기 만하면됩니다.
추천 도서 : WordPress에서 코드 스 니펫을 관리하고 사용하는 방법
1. 발췌 길이 변경
안 발췌 당신이 볼 수있는 짧은 게시물입니다. WordPress는이 경우 기본적으로 발췌 내용을 55 단어로 설정합니다. 그러나 WordPress를 사용하면 excerpt_length
필터, 다음과 같이.
function my_excerpt_length ($ length) return 30; add_filter ( 'excerpt_length', 'my_excerpt_length', 999);
반환 값은 발췌로 표시 될 단어의 합계를 나타냅니다. 위의 예에서는 발췌문에 각 게시물의 30 단어 분을 표시합니다.
2. 게시 수정 줄이기
WordPress를 사용하여 작가와 블로거는 이전 버전의 작업을 되돌아 볼 수 있습니다. 그러나 개정 수가 증가함에 따라 새롭게 기록 된 개정마다 데이터베이스에 새로운 행이 추가되므로 웹 사이트의 성능에 영향을 미칠 수 있습니다. 이 문제는 시간이 지나면 악화 될 것입니다..
이 문제를 해결하기 위해 데이터베이스에 저장할 리비전 수를 설정할 수 있습니다. 이 작업을 수행하려면 wp-config.php 아래에이 스 니펫을 추가하십시오. 저장하려는 개정 수를 제한하는 수를 변경하십시오..
define ( 'WP_POST_REVISIONS', 5);
WordPress 버전을 사용하지 않으려면 값을 그릇된
이렇게 :
정의 ( 'WP_POST_REVISIONS', 거짓);
3. 자동으로 게시물에 주요 이미지 설정
게시물을 나타내거나 설명하는 추천 이미지를 표시하는 것이 일반적입니다. WordPress는 우리가이 추천 이미지를 설정하도록 요구합니다. 수동으로. 프로세스를보다 효율적으로 만들기 위해 추천 이미지를 설정할 수 있습니다. 자동으로 게시물의 첫 번째 이미지를 추천 이미지로 만듭니다. 다음 코드 스 니펫을 사용하십시오..
function autoset_featured () 글로벌 $ 포스트; $ already_has_thumb = has_post_thumbnail ($ post-> ID); if (! $ already_has_thumb) $ attached_image = get_children ( "post_parent = $ post-> ID & post_type = 첨부 파일 & post_mime_type = 이미지 & 숫자 게시판 = 1"); if ($ attached_image) foreach ($ 첨부 _ 이미지 as $ attachment_id => $ 첨부) set_post_thumbnail ($ post-> ID, $ attachment_id); add_action ( 'the_post', 'autoset_featured'); add_action ( 'save_post', 'autoset_featured'); add_action ( 'draft_to_publish', 'autoset_featured'); add_action ( 'new_to_publish', 'autoset_featured'); add_action ( 'pending_to_publish', 'autoset_featured'); add_action ( 'future_to_publish', 'autoset_featured');
4. 최소 코멘트 길이 강제
1-2 단어의 팬이 좋아하지 않습니다. “니스 포스트!”, “잘 했어!”? 주석은 스팸이 아닐 수도 있지만 일반적으로 향후 토론을 권장하지 않는 주석 유형입니다. 의견을 말하게하려면 독자가 의견을 게시하기 전에 필요한 최소 단어 길이를 설정할 수 있습니다.
다음은 코멘트의 최소 문자 수 또는 단어 수를 설정하는 스 니펫입니다. 그것을 넣으십시오. functions.php.
함수 minimal_comment_length ($ commentdata) $ minimalCommentLength = 20; if (strlen (trimmed ($ commentdata [ 'comment_content']))
$ minimalCommentLength
value는 필요한 최소 문자 수입니다.이 값을 변경하여이 값을 조정하십시오.5. 사용자 의견에서 링크 비활성화
댓글 양식에 포함 된 링크는 게시되고 승인되면 즉시 클릭 가능한 링크가됩니다. 이것은 스패머들에 의해 악용 될 수 있으며, 귀하의 코멘트 섹션에 그들의 "스팸"페이지에 대한 링크가 넘치도록 격려 할 수 있습니다.
이를 극복하기 위해이 필터를 추가하여 링크의 클릭 기능을 비활성화하고 간단하게 일반 텍스트로 유지할 수 있습니다.
remove_filter ( 'comment_text', 'make_clickable', 9);6. 사용자 정의 메뉴에서 클래스 및 ID 제거
WordPress의 사용자 정의 메뉴를 보면 모든 메뉴 항목에 많은 클래스와 ID가 있습니다. 아래의 스 니펫을 사용하여 원하지 않는 수업을 제거하고 필요한 수업을 계속하십시오..
함수 my_css_attributes_filter ($ var) return is_array ($ var)? add_filter ( 'nav_menu_css_class', 'my_css_attributes_filter', 100, 1); add_filter ( 'nav_menu_item_id', 'my_css_attributes_filter', 100, 1); add_filter ( 'page_css_class', 'my_css_attributes_filter', 100, 1);위의 코드에서 우리는
현재 메뉴 항목
수업.7. 검색에서 페이지 제외
WordPress에서 검색을 수행하면 검색 쿼리와 관련성이 거의없는 페이지와 게시물의 결과를 가져옵니다. 이를 막기 위해 검색 결과를 필터링하여 게시물에서 발견 된 것만 표시 할 수 있습니다. 이 스 니펫을에 추가 function.php 이것을하기 위해.
function SearchFilter ($ query) if ($ query-> is_search) $ query-> set ( 'post_type', 'post'); return $ query; add_filter ( 'pre_get_posts', 'SearchFilter');8. Howdy 텍스트 바꾸기
'Howdy'텍스트가 지겨워? 귀하의 사이트에서 특별한 인사말로 바꾸고 싶다면 이것을 functions.php에 추가하면 효과가 즉시 발생합니다.
str_replace ( 'Howdy', 'Hello', $ translated); return str_replace ( 'Howdy', 'Hello', $ 번역 된) 함수 change_howdy ($ 번역, $ 텍스트, $ 도메인) 거짓 return $ translated; add_filter ( 'gettext', 'change_howdy', 10, 3);9. 특정 역할에 대한 추가 메뉴 제거 추가
이 스 니펫으로 관리자가 아닌 사용자를 위해 대시 보드에있는 메뉴를 숨길 수 있습니다..
function remove_admin_menus () if (is_user_logged_in () &&! current_user_can ( 'administrator')) remove_menu_page ( 'index.php'); // 대시 보드 remove_menu_page ( 'edit.php'); // 게시물 remove_menu_page ( 'upload.php'); // 미디어 remove_menu_page ( 'edit.php? post_type = page'); // 페이지 remove_menu_page ( 'edit-comments.php'); // 설명 remove_menu_page ( 'themes.php'); // 외관 remove_menu_page ( 'plugins.php'); // 플러그인 remove_menu_page ( 'users.php'); // 사용자 remove_menu_page ( 'tools.php'); // 도구 remove_menu_page ( 'options-general.php'); // 설정 add_action ( 'admin_init', 'remove_admin_menus');이 기능은 화면에서 메뉴를 제거하지만이 메뉴에 액세스 할 수있는 권한을 필터링하지는 않습니다. 사용자가 브라우저 주소 표시 줄을 통해 해당 메뉴에 직접 액세스하는 것을 막지는 않습니다. 그 (것)들을 당신의 functions.php.
10. 관리자가 아닌 사용자에 대한 관리 표시 줄 제거
WordPress 대시 보드에서는 사이드 바의 기본 메뉴 외에도 상단에 몇 가지 메뉴 링크가 있습니다. 특정 역할이나 사용자로부터이 관리 표시 줄 링크에 대한 액세스를 제한 할 수 있습니다. 이 스 니펫은 관리자가 아닌 사용자를 위해 관리 표시 줄에서 메뉴를 제거합니다 - 그에 따라 조정하십시오.
function remove_admin_bar_links () 글로벌 $ wp_admin_bar; if (! current_user_can ( 'administrator')) $ wp_admin_bar-> remove_menu ( 'wp-logo'); // WordPress 로고를 제거하십시오 $ wp_admin_bar-> remove_menu ( 'about'); // 워드 프레스 링크를 제거합니다 $ wp_admin_bar-> remove_menu ( 'wporg'); // WordPress.org 링크를 제거하십시오 $ wp_admin_bar-> remove_menu ( 'documentation'); // WordPress 문서 링크를 제거하십시오 $ wp_admin_bar-> remove_menu ( 'support-forums'); // 지원 포럼 링크를 제거하십시오 $ wp_admin_bar-> remove_menu ( 'feedback'); // 피드백 링크를 제거하십시오 $ wp_admin_bar-> remove_menu ( 'site-name'); // 사이트 이름 링크를 제거하십시오 $ wp_admin_bar-> remove_menu ( 'view-site'); // 방문 사이트 링크를 제거하십시오 $ wp_admin_bar-> remove_menu ( 'updates'); // 업데이트 링크를 제거하십시오 $ wp_admin_bar-> remove_menu ( 'comments'); // 주석 링크를 제거하십시오 $ wp_admin_bar-> remove_menu ( 'new-content'); // 새로운 콘텐츠 링크를 제거하십시오 $ wp_admin_bar-> remove_menu ( 'my-account'); // 사용자 정보 탭을 제거하십시오 add_action ( 'wp_before_admin_bar_render', 'remove_admin_bar_links');