• НАЧАЛО
  • Услуги

AIT WEB DESIGN - изработка на сайт и СЕО оптимизация

  • НАЧАЛО
  • Услуги
  • No products in cart.
  • Начало
  • Articles posted by afilipov
15.04.2026

Author: afilipov

Shipment 1 проблем с новият WooCommerce

  • 0
afilipov
четвъртък, 19 февруари 2026 / Published in WooCommerce

За да смените превода е нужно да направите следното:

Отворете файла functions.php на вашата тема или ако работите с чайлд тема и поставете следният код:

add_filter('woocommerce_shipping_package_name', function ($name, $package_id, $package) {
$packages = WC()->shipping()->get_packages();
if (count($packages) === 1) {
return 'Доставка';
}
return 'Shipping ' . ($package_id + 1);
}, 999, 3);

WooCommerce премахване на потвърждението за изход

  • 0
afilipov
четвъртък, 30 юли 2020 / Published in WooCommerce

Чрез кода по-долу вие премахвате потвърждението при изход от вашия акаунт в WooCommerce. Поставите го в function.php на вашата тема:


/**
 * Bypass logout confirmation.
 */

function iconic_bypass_logout_confirmation() {
    global $wp;
    if ( isset( $wp->query_vars['customer-logout'] ) ) {
        wp_redirect( str_replace( '&', '&', wp_logout_url( wc_get_page_permalink( 'myaccount' ) ) ) );
        exit;
    }
}

add_action( 'template_redirect', 'iconic_bypass_logout_confirmation' );

Добавяне на WooCommerce статус на поръчка

  • 0
afilipov
сряда, 15 юли 2020 / Published in WooCommerce

Някои от моите клиенти имат нужда от допълнителни персонализирани статуси по поръчките в своите електронни магазини. Ето и един код, който дава възможност за тяхното създаване. Поставите го в function.php на вашата тема:


function register_shipment_arrival_order_status() {
    register_post_status( 'wc-arrival-shipment', array(
        'label'                     => 'Shipment Arrival',
        'public'                    => true,
        'show_in_admin_status_list' => true,
        'show_in_admin_all_list'    => true,
        'exclude_from_search'       => false,
        'label_count'               => _n_noop( 'Shipment Arrival (%s)', 'Shipment Arrival (%s)' )
    ) );
}
add_action( 'init', 'register_shipment_arrival_order_status' );

function add_awaiting_shipment_to_order_statuses( $order_statuses ) {

    $new_order_statuses = array();

    foreach ( $order_statuses as $key => $status ) {

        $new_order_statuses[ $key ] = $status;

        if ( 'wc-processing' === $key ) {
            $new_order_statuses['wc-arrival-shipment'] = 'Shipment Arrival';
        }
    }

    return $new_order_statuses;
}
add_filter( 'wc_order_statuses', 'add_awaiting_shipment_to_order_statuses' );

Филтриране на постове в администрацията на WordPress за период от време

  • 0
afilipov
понеделник, 13 юли 2020 / Published in Wordpress, Трикове

Ето и кода, който трябва да поставите в function.php на вашата тема:

class mishaDateRange{
 
	function __construct(){
 
		// if you do not want to remove default "by month filter", remove/comment this line
		add_filter( 'months_dropdown_резултата', '__return_empty_array' );
 
		// include CSS/JS, in our case jQuery UI datepicker
		add_action( 'admin_enqueue_scripts', array( $this, 'jqueryui' ) );
 
		// HTML of the filter
		add_action( 'restrict_manage_posts', array( $this, 'form' ) );
 
		// the function that filters posts
		add_action( 'pre_get_posts', array( $this, 'filterquery' ) );
 
	}
 
	/*
	 * Add jQuery UI CSS and the datepicker script
	 * Everything else should be already included in /wp-admin/ like jquery, jquery-ui-core etc
	 * If you use WooCommerce, you can skip this function completely
	 */
	function jqueryui(){
		wp_enqueue_style( 'jquery-ui', '//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.min.css' );
		wp_enqueue_script( 'jquery-ui-datepicker' );
	}
 
	/*
	 * Two input fields with CSS/JS
	 * If you would like to move CSS and JavaScript to the external file - welcome.
	 */
	function form(){
 
		$from = ( isset( $_GET['mishaDateFrom'] ) && $_GET['mishaDateFrom'] ) ? $_GET['mishaDateFrom'] : '';
		$to = ( isset( $_GET['mishaDateTo'] ) && $_GET['mishaDateTo'] ) ? $_GET['mishaDateTo'] : '';
 
		echo '
 
		
		
 
		';
 
	}
 
	/*
	 * The main function that actually filters the posts
	 */
	function filterquery( $admin_query ){
		global $pagenow;
 
		if (
			is_admin()
			&& $admin_query->is_main_query()
			// by default filter will be added to all post types, you can operate with $_GET['post_type'] to restrict it for some types
			&& in_array( $pagenow, array( 'edit.php', 'upload.php' ) )
			&& ( ! empty( $_GET['mishaDateFrom'] ) || ! empty( $_GET['mishaDateTo'] ) )
		) {
 
			$admin_query->set(
				'date_query', // I love date_query appeared in WordPress 3.7!
				array(
					'after' => sanitize_text_field( $_GET['mishaDateFrom'] ), // any strtotime()-acceptable format!
					'before' => sanitize_text_field( $_GET['mishaDateTo'] ),
					'inclusive' => true, // include the selected days as well
					'column'    => 'post_date' // 'post_modified', 'post_date_gmt', 'post_modified_gmt'
				)
			);
 
		}
 
		return $admin_query;
 
	}
 
}
new mishaDateRange();

WordPress полезни модули, стратегии и оптимизация за фирмен сайт

  • 0
afilipov
неделя, 12 юли 2020 / Published in WordPress Модули, Код оптимизация

ЗАЩИТА

1. Модул за защита – iThemes Security (formerly Better WP Security)
2. Модул за защита от ботове и ненужен трафик – WordPress Block and Stop Bad Bots Plugin StopBadBots
3. Модул за смяна на адреса на адрминистрацията в WordPress – WPS Hide Login

СЕО

4. Модул за редирект 301 на старите адреси на уеб сайта, към новите страници Simple 301 Redirects (ако правите нова версия на сайта)
5. SEO модул Yoast SEO (перфектната СЕО приставка)

ОПТИМИЗАЦИЯ НА КОДА И СКОРОСТТА НА САЙТА

5. Модул за кеширане  – WP Rocket (най-добрия за мен)
6. Модул за минимизиране на js, css и html скриптовете  – Autoptimize

WooCommerce изграждане на филтър на поръчките в администрацията по персонализирано поле (Custom Field)

  • 0
afilipov
неделя, 12 юли 2020 / Published in Wordpress, Трикове

Как да направим филтър на поръчки в администрацията на WooCommerce по персонализирано поле или Custom Field, който сме създали в нашите order-и (в случая post_type-а е shop_order):

1. Нека първо да направим функцията, която ще промени главната заявка и тя да се стартира само, когато typenow е ‘shop_order’. В случая следим променливата paybyw дали е равна на „on“ и ще филтрираме по този критерии.

function so_filter_shop_order3($query) {

    global $typenow;
	$user = wp_get_current_user();
	
    if ($query->is_main_query() && $typenow === 'shop_order') 
	{
       
	   $query->set( 'meta_key', 'paybyw' );
           $query->set( 'meta_value', 'on' );
	   
    }
}

2. Следим, дали сесията ни е я има и въз основа на стойността й включваме или изключваме дадена функция.


if ($_GET['order_type'])
{
	$_SESSION["order_type"] = (int)$_GET['order_type'];
}elseif ($_GET['order_type'] == '0')
{
	$_SESSION["order_type"] = 0;
}


switch ($_SESSION["order_type"]) 
{	
    case 0:
			
    break;
    case 3:
			add_action( 'pre_get_posts', 'so_filter_shop_order3' );
    break;
    case 4:
			add_action( 'pre_get_posts', 'so_filter_shop_order4' );
    break;
    case 5:
			add_action( 'pre_get_posts', 'so_filter_shop_order5' );
    break;
}

Mysql заявки към друга WordPress система?

  • 0
afilipov
събота, 11 юли 2020 / Published in Wordpress, Трикове

Скоро ми се случи в един мой WP сайт, да се обърна към друг и да извадя информация от базата данни и ето как го направих:

Първо създадох функция за връзка с базата данни на втория сайт:

function seconddb() {
    global $seconddb;
    $seconddb = new wpdb(USERNAME, PASSWORD, DATABASE_NAME, HOSTNAME);
}
add_action('init', 'seconddb');

След това си написах shortcode, който да мога да включа където искам в първия сайт и да визуализирам данните от втория:

function ajaxloadcatalog_func( $atts ){
global $seconddb;
$text = '';
$allcats = $seconddb->get_резултата( "SELECT t.term_id AS id, t.name AS post_title, t.slug AS post_url FROM vcp_terms t LEFT JOIN vcp_term_taxonomy tt ON t.term_id = tt.term_id WHERE tt.taxonomy = 'product_cat' ORDER BY name
");

foreach ( $allcats as $mycats ) 
{

		$text .= $mycats->post_url.' - '.$mycats->post_title;
}
	

	return $text;
}

add_shortcode( 'ajaxloadcatalog', 'ajaxloadcatalog_func' );

WordPress и обработка на заявката за търсене (търсене по точна ключова дума)

  • 0
afilipov
събота, 11 юли 2020 / Published in Wordpress, Трикове

Как да търсим в нашата WordPress система по точно определена ключова дума?
Чрез този код, ако търсите думата „спорт“, то пост в който има думата „автотранспорт“ няма да излезе. Ще излязат всички постове, в които съществува точно думата „спорт“ и тя не е част от друга дума.




add_filter('posts_search', 'my_search_is_exact', 20, 2);
function my_search_is_exact($search, $wp_query){

    global $wpdb;

    if(empty($search))
        return $search;

    $q = $wp_query->query_vars;
    $n = !empty($q['exact']) ? '' : '%';

    $search = $searchand = '';

    foreach((array)$q['search_terms'] as $term) :

        $term = esc_sql(like_escape($term));

        $search.= "{$searchand}($wpdb->posts.post_title REGEXP '[[:<:]]{$term}[[:>:]]') OR ($wpdb->posts.post_content REGEXP '[[:<:]]{$term}[[:>:]]')";

        $searchand = ' AND ';

    endforeach;

    if(!empty($search)) :
        $search = " AND ({$search}) ";
        if(!is_user_logged_in())
            $search .= " AND ($wpdb->posts.post_password = '') ";
    endif;

    return $search;

}


Модул който покрива на 100% GDPR изискванията в WordPress

  • 0
afilipov
събота, 07 юли 2018 / Published in Wordpress, WordPress Модули
Модул който покрива на 100% GDPR изискванията в WordPress

Модул за защита и сигурност в WordPress

  • 0
afilipov
събота, 24 февруари 2018 / Published in Wordpress, WordPress Модули, Код оптимизация
Модул за защита и сигурност в WordPress
  • 1
  • 2
  • 3

Търсене

Категории

  • CSS
  • SEO Оптимизация
  • WooCommerce
  • Wordpress
  • WordPress Модули
  • Код оптимизация
  • Трикове

Архиви

  • февруари 2026
  • юли 2020
  • юли 2018
  • февруари 2018
  • август 2017
  • март 2017
  • ноември 2016
  • октомври 2016
  • септември 2016
  • август 2016
  • юли 2016
  • юни 2016
  • май 2016
  • март 2016
  • юли 2012

УСЛУГИ

ВРЪЗКА С НАС

(+359) 888 898 797
Email: office@ait-webdesign.com

AIT WEB DESIGN
6300 Хасково, Ул. Хан Аспарух 9-11. България

Отвори в Google Maps

ПОСЛЕДНО ЗАВЪРШЕНИ ПРОЕКТИ

Етикети

  • НАЧАЛО
  • Услуги

Всички права запазени AIT WEB DESIGN 2026

НАГОРЕ