我为wordpress创建了一个前端编辑器(使用ckeditor)。现在它编辑模板中的字段(如标题和描述部分的一部分)并将其保存到自定义表
这是我的表
id |模板|选择器|日期|内容|郎
模板 - 模板名称示例:expertise.php
选择器 - 模板示例的唯一jquery选择器:.sec.sec3> 。内容 (它用于选择可编辑的内容,我不希望用户能够编辑的内容将在此选择示例之外.sec.sec3> .button)
日期 - 用于修订
内容 - 已保存的网页
lang - wpml lang code
获取最新字段的功能(最新日期和当前日期)
function mwe_get_template_fields($template){
global $wpdb;
$t = $wpdb->prefix.'mwe_template_fields';
if(ICL_LANGUAGE_CODE !== NULL){
$sql = $wpdb->prepare( "SELECT * FROM $t
WHERE template = %s
AND date IN (SELECT max(date) FROM $t)
AND lang = %s
GROUP BY selector
ORDER BY date DESC
", $template,ICL_LANGUAGE_CODE);
$result = $wpdb->get_results( $sql, ARRAY_A );
if(empty($result)){
global $sitepress;
$lang=$sitepress->get_default_language();
$sql = $wpdb->prepare( "SELECT * FROM $t
WHERE template = %s
AND date IN (SELECT max(date) FROM $t)
AND lang = %s
GROUP BY selector
ORDER BY date DESC
", $template,$lang);
$result = $wpdb->get_results( $sql, ARRAY_A );
}
}else{
$sql = $wpdb->prepare( "SELECT * FROM $t
WHERE template = %s
AND date IN (SELECT max(date) FROM $t)
GROUP BY selector
ORDER BY date DESC
", $template);
$result = $wpdb->get_results( $sql, ARRAY_A );
}
$return=array();
foreach($result as $field){
$return[$field['selector']]= str_replace('\"','"',$field['content']);
}
return $return;
}
我的search.php(非常简单)
<?php
get_header(); ?>
<section class="sec-pagetop">
<article class="pagetop gradient2">
<div class="container">
<h1>Search</h1>
</div>
</article>
<span class="go-to" data-target=".search-list"></span>
</section>
<section class="sec search-list">
<div class="container">
<?php if ( have_posts() ) : ?>
<?php
// Start the loop.
while ( have_posts() ) : the_post(); ?>
<article id="post-<?php the_ID(); ?>" ca;ss="fadeInAnim">
<header class="entry-header">
<?php the_title( sprintf( '<h2 class="entry-title"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ), '</a></h2>' ); ?>
</header><!-- .entry-header -->
<div class="entry-summary">
<?php the_excerpt(); ?>
</div><!-- .entry-summary -->
<a class="btn-more" href="<?=get_permalink()?>"><?_e('See more')?></a>
</article><!-- #post-## -->
<?
endwhile;
the_posts_pagination( array(
'prev_text' => __( 'Previous page' ),
'next_text' => __( 'Next page' ),
'before_page_number' => '<span class="meta-nav screen-reader-text">' . __( 'Page' ) . ' </span>',
) );
endif;
?>
</div>
</section>
<?php get_footer(); ?>
我可以轻松搜索这些字段的内容,甚至根据帖子使用此模板获取网址,但如何将其添加到搜索中?
我也有想法,也许不是chaning搜索,我可以为while ( have_posts() )
提供自己的帖子?覆盖搜索存档页面的全局帖子。
注意:我不想将我的字段保存到wp_posts。
注意2:我不想使用自定义搜索表单和功能,我想将我的结果添加到wordpress搜索中,以便与所有主题兼容