>CMS 튜토리얼 >Word누르다 >사용자 정의 WordPress 검색 플러그인을 만드는 방법

사용자 정의 WordPress 검색 플러그인을 만드는 방법

WBOY
WBOY원래의
2023-09-05 17:25:49644검색

사용자 정의 WordPress 검색 플러그인을 만드는 방법

사용자 정의 WordPress 검색 플러그인을 만드는 방법

강력한 콘텐츠 관리 시스템인 WordPress는 여러 가지 강력한 기본 기능을 제공하며 그 중 하나가 검색 기능입니다. 그러나 때로는 기본 검색 기능이 우리의 요구 사항을 완전히 충족하지 못하는 경우가 있습니다. 이 경우 사용자 정의 WordPress 검색 플러그인을 생성하여 필요한 검색 기능을 얻을 수 있습니다. 이 기사에서는 기본 사용자 정의 검색 플러그인을 작성하는 방법을 소개하고 해당 코드 예제를 제공합니다.

1단계: 플러그인 폴더 만들기

먼저 WordPress 플러그인 디렉터리에 새 폴더를 만들어 맞춤 검색 플러그인을 저장하세요. 폴더 이름을 "custom-search" 또는 원하는 대로 지정할 수 있습니다.

2단계: 플러그인 메인 파일 생성

플러그인 폴더에 메인 파일을 생성하고 이름을 "custom-search.php"로 지정합니다. 이는 플러그인의 진입점이며 플러그인을 정의하는 기본 정보와 플러그인을 활성화하는 데 필요한 기능을 포함합니다.

다음은 "custom-search.php"의 기본 코드 예입니다.

<?php
/*
Plugin Name: Custom Search
Plugin URI: https://www.example.com
Description: This is a custom search plugin for WordPress.
Version: 1.0
Author: Your Name
Author URI: https://www.example.com
*/

// 在这里添加插件功能代码
?>

이 파일에서는 이름, 설명, 버전 번호 및 플러그 작성자를 포함하여 플러그인에 대한 기본 정보를 제공해야 합니다. -안에. 플러그인의 기능 코드가 이 파일 하단에 추가됩니다.

3단계: 검색 양식 추가

검색 키워드를 입력하기 위해 플러그인의 기본 파일에 검색 양식을 추가합니다.

다음은 검색 양식을 추가하는 코드 예시입니다.

function custom_search_form() {
    $form = '
        <form role="search" method="get" id="searchform" action="' . home_url('/') . '" >
            <input type="text" value="' . get_search_query() . '" name="s" id="s" placeholder="Enter your search keyword" />
            <input type="submit" id="searchsubmit" value="Search" />
        </form>
    ';
     
    return $form;
}

이 예시에서는 home_url('/') 함수를 사용하여 웹사이트의 홈페이지 URL을 가져와서 다음과 같이 사용합니다. 검색 양식의 code>action 속성. get_search_query() 함수는 검색 양식에 입력하는 데 사용되는 현재 검색 키워드를 반환합니다. home_url('/')函数来获取网站的首页URL,将其作为搜索表单的action属性。get_search_query()函数返回当前搜索关键字,用于将其填充到搜索表单中。

第四步:处理搜索请求

在插件的主文件中添加处理搜索请求的函数。

以下是处理搜索请求的代码示例:

function custom_search_results() {
    $keyword = isset($_GET['s']) ? $_GET['s'] : '';
     
    if ($keyword) {
        $search_results = new WP_Query(array(
            's' => $keyword,
            'post_type' => 'post',
            'order' => 'DESC',
            'orderby' => 'date',
        ));
         
        if ($search_results->have_posts()) {
            while ($search_results->have_posts()) {
                $search_results->the_post();
                 
                // 在这里输出搜索结果的HTML代码
            }
        } else {
            echo 'No results found';
        }
         
        wp_reset_postdata();
    }
}

在这个例子中,我们首先通过$_GET['s']获取到搜索关键字。然后,我们使用WP_Query类来获取相关的搜索结果。通过在WP_Query对象的配置中设置s参数为搜索关键字,post_type参数为"post",我们可以只搜索文章类型的内容。

在循环遍历搜索结果之前,我们需要使用have_posts()函数来判断是否有搜索结果。如果有搜索结果,我们可以使用the_post()函数来准备下一个搜索结果进行输出。你可以根据自己的需要自定义搜索结果的HTML代码。

第五步:注册插件的短代码

在插件的主文件中注册一个短代码,用于在网站中添加搜索表单。

以下是注册短代码的代码示例:

function custom_search_shortcode() {
    ob_start();
    custom_search_form();
    return ob_get_clean();
}
add_shortcode('custom_search', 'custom_search_shortcode');

在这个例子中,我们使用了ob_start()ob_get_clean()来捕获搜索表单的输出,并将其作为短代码的返回值。我们可以使用add_shortcode()函数来注册短代码,并将自定义搜索表单的函数作为回调函数。

第六步:启用插件

保存插件的主文件,并通过WordPress的后台管理系统将插件启用。之后,你可以在任何希望添加搜索表单的位置使用[custom_search]

4단계: 검색 요청 처리

플러그인 메인 파일에 검색 요청을 처리하는 기능을 추가하세요.

다음은 검색 요청을 처리하는 코드 예시입니다. 🎜rrreee🎜이 예시에서는 먼저 $_GET['s']를 통해 검색 키워드를 얻습니다. 그런 다음 WP_Query 클래스를 사용하여 관련 검색 결과를 얻습니다. WP_Query 개체 구성에서 s 매개변수를 검색 키워드로 설정하고 post_type 매개변수를 "post"로 설정하면 검색만 가능합니다. 기사 유형 콘텐츠의 경우. 🎜🎜검색 결과를 반복하기 전에 have_posts() 함수를 사용하여 검색 결과가 있는지 확인해야 합니다. 검색 결과가 있으면 the_post() 함수를 사용하여 다음 검색 결과 출력을 준비할 수 있습니다. 필요에 따라 검색 결과의 HTML 코드를 사용자 정의할 수 있습니다. 🎜🎜5단계: 플러그인 단축 코드 등록🎜🎜플러그인 메인 파일에 단축 코드를 등록하여 웹사이트에 검색 양식을 추가하세요. 🎜🎜다음은 단축 코드 등록을 위한 코드 예시입니다: 🎜rrreee🎜이 예시에서는 ob_start()ob_get_clean()을 사용하여 검색 양식의 출력을 캡처했습니다. , 이를 단축 코드의 반환 값으로 사용합니다. add_shortcode() 함수를 사용하여 단축 코드를 등록하고 맞춤 검색 양식의 기능을 콜백 함수로 사용할 수 있습니다. 🎜🎜6단계: 플러그인 활성화 🎜🎜플러그인의 기본 파일을 저장하고 WordPress 백엔드 관리 시스템을 통해 플러그인을 활성화합니다. 그런 다음 [custom_search] 단축 코드를 사용하여 추가하려는 위치에 검색 양식을 표시할 수 있습니다. 🎜🎜요약🎜🎜사용자 정의 WordPress 검색 플러그인을 생성하면 필요한 검색 기능을 얻을 수 있습니다. 이 문서에서는 기본 사용자 정의 검색 플러그인을 생성하고 해당 코드 예제를 제공하는 방법을 설명합니다. 귀하의 필요와 기술 수준에 따라 플러그인의 기능을 더욱 확장하고 개선할 수 있습니다. 이 글이 여러분의 필요에 맞는 맞춤 검색 플러그인을 만드는 데 도움이 되기를 바랍니다. 🎜

위 내용은 사용자 정의 WordPress 검색 플러그인을 만드는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.