403Webshell
Server IP : 172.67.71.254  /  Your IP : 216.73.217.51
Web Server : nginx/1.27.1
System : Linux in-5 5.15.0-191-generic #201-Ubuntu SMP Fri Aug 7 18:39:04 UTC 2026 x86_64
User : arabianexpress ( 1872)
PHP Version : 8.0.30
Disable Function : exec,passthru,shell_exec,system,proc_open,popen,parse_ini_file,show_source
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /storage/v9321/leapdubai/public_html/wp-content/plugins/kirki/app/Traits/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /storage/v9321/leapdubai/public_html/wp-content/plugins/kirki/app/Traits/SearchablePost.php
<?php

namespace Kirki\App\Traits;

defined('ABSPATH') || exit;

use Kirki\App\Constants\PostStatus;
use Kirki\Framework\Database\Query\QueryBuilder;
use Kirki\Framework\Supports\Arr;

trait SearchablePost {
    /**
     * Search posts
     * 
     * @param QueryBuilder $query
     * @param string $keyword
     * @return QueryBuilder
     */
    public function scope_search(QueryBuilder $query, $keyword) {
        if (!is_string($keyword) || $keyword === '') {
            return $query;
        }

        return $query->where(function (QueryBuilder $query) use ($keyword) {
                $query->where_like('post_title', $keyword . '%')
                    ->or_where_like('post_content', $keyword . '%')
                    ->or_where_like('post_excerpt', $keyword . '%');
            });
    }

    /**
     * Filter posts by status
     * 
     * @param QueryBuilder $query
     * @param string|string[] $status
     * 
     * @return QueryBuilder
     */
    public function scope_filter_status(QueryBuilder $query, $status) {
        $statuses = Arr::wrap($status);
        $statuses = !in_array('all', $statuses, true) && !in_array('any', $statuses, true) ? $statuses : [];

        if (!empty($statuses)) {
			return $query->where_in('post_status', $statuses);
		}

        return $query;
    }

    /**
     * Filter posts by post type
     * 
     * @param QueryBuilder $query
     * @param string|string[] $post_type
     * 
     * @return QueryBuilder
     */
    public function scope_filter_post_type(QueryBuilder $query, $post_type) {
        $post_types = Arr::wrap($post_type);

        if (empty($post_types)) {
            return $query;
        }

        return $query->where_in('post_type', $post_types);
    }

    /**
     * Exclude trashed posts
     * 
     * @param QueryBuilder $query
     * 
     * @return QueryBuilder
     */
    public function scope_exclude_trash(QueryBuilder $query) {
        return $query->where_not('post_status', PostStatus::TRASH);
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit