Skip to content

Instantly share code, notes, and snippets.

View msaari's full-sized avatar

Mikko Saari msaari

View GitHub Profile
@msaari
msaari / oxygen.php
Created November 14, 2020 05:02
Improved Oxygen compatibility
<?php
/**
* /lib/compatibility/oxygen.php
*
* Oxygen Builder compatibility features.
*
* @package Relevanssi
* @author Mikko Saari
* @license https://wordpress.org/about/gpl/ GNU General Public License
* @see https://www.relevanssi.com/
@msaari
msaari / paidmembershippro.php
Created October 27, 2020 03:58
/lib/compatibility/paidmembershippro.php
<?php
/**
* /lib/compatibility/paidmembershippro.php
*
* Paid Membership Pro compatibility features.
*
* @package Relevanssi
* @author Mikko Saari
* @license https://wordpress.org/about/gpl/ GNU General Public License
* @see https://www.relevanssi.com/
@msaari
msaari / functions.php
Created October 15, 2020 04:29
Block Formidable Forms entries
<?php
// Add this to theme functions.php and rebuild the index to remove Formidable Forms entries from index
add_filter( 'relevanssi_indexing_restriction', 'rlv_no_formidable' );
function rlv_no_formidable( $restriction ) {
global $wpdb;
$restriction['mysql'] .= " AND post.ID NOT IN (SELECT post_id FROM $wpdb->postmeta WHERE meta_key = '_wp_attached_file' AND meta_value LIKE 'formidable%' ) ";
$restriction['reason'] .= ' No Formidable Forms entries';
return $restriction;
}
@msaari
msaari / search-results.php
Last active September 22, 2020 12:41
SearchWP Live Ajax Search template with support for users and taxonomies
<?php
/**
* Save this as searchwp-live-ajax-search/search-results.php inside your theme.
*/
?>
<?php if ( have_posts() ) : ?>
<?php while ( have_posts() ) : the_post(); if ( 'draft' === $post->post_status ) continue; ?>
<?php $post_type = get_post_type_object( get_post_type() ); ?>
<div class="searchwp-live-search-result" role="option" id="" aria-selected="false">
@msaari
msaari / indexing.php
Created August 28, 2020 03:51
Relevanssi indexing.php without doc count update
<?php
/**
* /lib/indexing.php
*
* @package Relevanssi
* @author Mikko Saari
* @license https://wordpress.org/about/gpl/ GNU General Public License
* @see https://www.relevanssi.com/
*/
@msaari
msaari / rlv_category_dropdown.php
Last active July 20, 2020 02:53
Improved rlv_category_dropdown
<?php
function rlv_category_dropdown() {
global $rlv_categories_present, $wp_query;
$select = "<div id='catCheckboxes'><p>Choose a category:</p>";
$cat_params = array_map( 'intval', explode( ',', $wp_query->query_vars['cats'] ) );
foreach ( $rlv_categories_present as $cat_id => $cat_name ) {
$checked = '';
if ( in_array( $cat_id, $cat_params, true ) ) {
@msaari
msaari / relevanssi_index_tablepress_acf.php
Last active June 27, 2020 01:48
Index TablePress shortcodes in ACF fields
<?php
add_filter( 'relevanssi_custom_field_value', 'rlv_tablepress_in_acf' );
function rlv_tablepress_in_acf( $value ) {
$tablepress_controller = relevanssi_enable_tablepress_shortcodes();
$post_before_shortcode = $post;
$value[0] = do_shortcode( $value[0] );
$post = $post_before_shortcode;
<?php
add_action('template_redirect', 'one_match_redirect');
function one_match_redirect() {
if (is_search()) {
global $wp_query;
if ($wp_query->post_count == 1) {
wp_redirect( get_permalink( $wp_query->posts['0']->ID ) );
exit();
}
@msaari
msaari / relevanssi-arabic.php
Created May 3, 2020 15:20
Relevanssi Arabic support
<?php
add_filter( 'relevanssi_remove_punctuation', 'rlv_arabic_remap', 9 );
function rlv_arabic_remap( $a ) {
$remap = array(
'إ' => 'ا',
'آ' => 'ا',
'أ' => 'ا',
'ئ' => 'ى',
'ة' => 'ه',
@msaari
msaari / searchform.php
Created April 23, 2020 16:43
Searchform.php
<div role="search" class="search-form-wrapper">
<form method="get" class="g1-searchform-tpl-default search-form" action="https://beezfac.com/m/">
<label>
<span class="screen-reader-text">Search for:</span>
<input type="search" class="search-field" placeholder="Search …" value="" name="s" title="Search for:">
<input type="hidden" name="searchblogs" value="all" />
</label>
<button class="search-submit">Search</button>
</form>
</div>