Внести изменения для движка и написать мультифункциональный парсер . Нужно внести изменения в движок: • добавить дополнительные опции для пользователей (привилегии) • подключить локализированные файлы для движка и добавить возможно переключения языков ...
Поправить php-скрипт
История такая:
Поле боя - Wordpress. Есть сказочная тема Boutique Kids, написана она неким dtbaker'ом - забугорным вордпресс девелопером. И все бы ничего, да есть тут загвоздка, в саму тему встроен плагин WooCommerce (лучшее решение для вп он-лайн шопов) и под него написан вот такой скрипт для модификации товарной корзины:
'; $categories = array(); $terms = get_the_terms( get_the_ID(), 'product_cat', '', ', ', '' ); if(is_array($terms)) { foreach ( $terms as $category ) { $categories[ $category->term_id ] = $category->name; } } echo implode(' » ',$categories); echo ''; } // hack for before/after title header. function dtbaker_woocommerce_show_page_title($tf){ static $done = false; if($tf && !$done){ $done = true; do_action('boutique_page_header_before'); } return $tf; } function dtbaker_woocommerce_archive_description(){ static $done = false; if(!$done){ $done = true; do_action('boutique_page_header_after'); } } add_filter('woocommerce_show_page_title', 'dtbaker_woocommerce_show_page_title', 10, 1); add_action('woocommerce_archive_description', 'dtbaker_woocommerce_archive_description'); function woo_archive_custom_cart_button_text() { return __( 'Купить сейчас', 'boutique-kids' ); } function dtbaker_woocommerce_loop_add_to_cart_link($url, $product=array(), $link=array()){ return preg_replace('#class="[^"]*"#','class="dtbaker_button_light"',$url); } function dtbaker_woocommerce_product_add_to_cart_url($url, $obj){ if(isset($obj->id) && $obj->id > 0){ $url = add_query_arg(array( 'add-to-cart'=>$obj->id, ),get_permalink($obj->id)); } return $url; } // stop default pages from getting installed by woocommerce. we create these in our default options are. function dtbaker_woocommerce_stop_default_pages(){ return 0; } add_filter('pre_option__wc_needs_pages','dtbaker_woocommerce_stop_default_pages'); // style success message function dtbaker_wc_add_to_cart_message($message, $product_id){ return str_replace('button wc-forward','dtbaker_button_light',$message); } add_filter('wc_add_to_cart_message','dtbaker_wc_add_to_cart_message', 10, 2); function dtbaker_woocommerce_single_product_image_html($message, $product_id){ $message = str_replace('woocommerce-main-image','woocommerce-main-image fancy_border',$message); $message = preg_replace('#]*>#','
$0
',$message); return $message; } add_filter('woocommerce_single_product_image_html','dtbaker_woocommerce_single_product_image_html', 10, 2); //add_action( 'woocommerce_before_shop_loop_item_title', 'woocommerce_template_loop_product_thumbnail', 10 ); // copied from woocommerce-template.php /*function woocommerce_get_product_thumbnail( $size = 'shop_catalog', $placeholder_width = 0, $placeholder_height = 0 ) { global $post; if ( has_post_thumbnail() ) $d = get_the_post_thumbnail( $post->ID, $size ); elseif ( woocommerce_placeholder_img_src() ) $d = woocommerce_placeholder_img( $size ); else $d = ''; return ''.$d.'
'; }*/ add_filter( 'woocommerce_output_related_products_args', 'dtbaker_related_products_args' ); function dtbaker_related_products_args( $args ) { $args['posts_per_page'] = 4; // 4 related products $args['columns'] = 4; // arranged in 2 columns return $args; } remove_action( 'woocommerce_after_single_product_summary', 'woocommerce_upsell_display', 15 ); add_action( 'woocommerce_after_single_product_summary', 'woocommerce_output_upsells', 15 ); if ( ! function_exists( 'woocommerce_output_upsells' ) ) { function woocommerce_output_upsells() { woocommerce_upsell_display( 4,4 ); // Display 3 products in rows of 3 } }}И этот самый скрипт блокирует стандартную корзину самого WooCommerce'а, а только в ней есть настройка позволяющая задавать товару 4 типа, один из которых - external - товар партнерской сети, переход на который осуществляется после нажатия кнопки "Купить".
Скрипт от dtbaker'а же блокирует это возможность и вместо перехода по внешней ссылке удерживает нас в корзине (даже при удаленной её странице) и выводит сообщение о невозможности приобрести товар:
https://forkids.moscow/shop/malyshi/podarochnyj-sertifikat-na-5000r-little-gentrys/?add-to-cart=8862
Выглядит это как на ссылке выше.
Задача исправить скрипт, при необходимости, поправить что-то в другом скрипте темы.
С меня доступы с вас результат.
Затык я думаю не первый, так что хотелось б иметь возможность и дальше работать по возникающим вопросам.
Заявки фрилансеров
Похожие заказы
- Веб-программирование2 заявкиЗакрыт8 лет назад
Суть работы скрипта следующая: На страницу выводится адреса банков (из БД) в левый блок сайта, а в правом боку подгружается карта Яндекса и на ней выводятся флажки(метки) тех банков которые показаны в левом ...
Веб-программирование2 заявкиЗакрыт8 лет назадЕсть страница типа /reviews/ivanov/ На ней кнопка В каталог Требуется сделать формирование урла на кнопке атвоматом, т.е. разобрать урл, отбросить все до последнего слова, тем самым получить ivanov а затем запихнуть это ...
Веб-программирование13 заявокЗакрыт8 лет назад- $50
Нужен парсер ИНФОРМАЦИИ ИСПОЛНИТЕЛЯ в yandex музыке - несколько млн страниц! Реально сделать рабочий парсер на PHP с прокси и капчей? Чтобы yandex не блокировал? Или нужно только на базе Zennoposter ...
Веб-программирование1 заявкаЗакрыт8 лет назад Необходимо оптимизировать ресурс http://vannaya.pro/ Интересует оптимизация как для PC так и для мобильных. Сайт на wp.
Веб-программирование1 исполнительЗавершен8 лет назадЕсть простой psd макет выполненный через бутстрап, состоящий из 6 страниц, включая 404. Необходимо грамотно и адаптивно: сверстать и натянуть на wordpress.
Веб-программирование1 исполнительЗавершен8 лет назад- $500
www.themes.me – сайт написал на Laravel фреймворке, нужно доделать определенную функциональность. Код уже есть, но его не сильно много, можно сказать что проект остановился в начале, т.к. исполнитель пропал. Для участия в проекта, первым словом поставьте ...
Веб-программирование10 заявокЗакрыт8 лет назад На данный момент, на сайте, должны генерироваться Excel файлы (см. вложение) на основании выборок из базы данных. Сейчас есть код, который это реализует на PEAR модуль Simple_Excel_Writer. Столкнулись с такой проблемой, что в новой ...
Веб-программированиенет заявокЗакрыт8 лет назад- $20
Мне нужен скрипт который будет собирать прокси с сайтов: Например - hidemy.name https://best-proxies.ru https://good-proxies.ru http://www.gatherproxy.com и т.д Что должен делать скрипт: Собирать все прокси с сайтов, чекать ...
Веб-программирование5 заявокЗакрыт8 лет назад На лендинге форма обратной связи готова, нужен только обработчик для отправления писем.
Веб-программирование1 исполнительЗавершен8 лет назад