Домой Блог
Предположим есть верстка html, где нужно все номера телефонов сделать ссылками и добавить к каждой ссылке класс:
<div>
<ul>
<li>+375007778899</li>
<li>+375007778822</li>
<li>+375007778811</li>
</ul>
</div>
Выполним скрипт js с использование jQuery:
jQuery(document).ready(function($) {
$('.phones').html( $('.phones').html().replace(/(+d+)/g,'<a href="tel:$1">$1</a>') );
});
После выполнения скрипта верстка будет иметь вид:
<div>
<ul>
<li><a href="tel:+375007778899">+375007778899</a></li>
<li><a href="tel:+375007778822">+375007778822</a></li>
<li><a href="tel:+375007778811">+375007778811</a></li>
</ul>
</div>
Такой способ выделения номеров телефонов ссылками подойдет в случае, если эти номера телефонов находятся в описании среди прочего текста. Например, в заполненных ранее контент-менеджером информационных...
Создадим форму без перезагрузки страницы на фреймворке Laravel с использованием технологии ajax. Для начала пропишем роуты в web.php
// Новая страница с формой - вывод
Route::get('/feedback', array(
'as' => 'site.index.feedback',
'uses' => 'IndexController@feedback'
));
// Роут ajax контроллера
Route::post('/feedback', 'AjaxController@store');
Создадим вид (шаблон с версткой)
/resources/views/site/index/feedback.blade.php с формой
<form id="dismissal-form" method="POST" action="{{ $url }}">
{{ csrf_field() }}
<div class="form-container">
...
Добавим новую область отображения модулей в макетах Дизайна в CMS Opencart 3.x
В других версиях OpenCart все аналогично:
Добавим в админке новую область, файл /admin/view/template/design/layout_form.twig
Сделаем, например, копию нижней области макета. Найдем код верстки:
<table id="module-content-bottom" class="table table-striped table-bordered table-hover">
...
</table>
После этой таблицы вставим копию и изменим везде "bottom" на "bottom2", получится такой код новой таблицы:
<table id="module-content-bottom2" class="table table-striped table-bordered table-hover">
<thead>
...
В файле result_modifier.php компонента корзины вставляем код:
$arProducts = ;
foreach ($arResult as $arRow)
{
$arProducts] = ;
}
if (!empty($arProducts))
{
$arSelect = Array("ID", "IBLOCK_ID", "PROPERTY_CML2_LINK", "PROPERTY_CML2_LINK.IBLOCK_SECTION_ID", "IBLOCK_SECTION_ID");
$arFilter = Array("ID" => array_keys($arProducts));
$res = CIBlockElement::GetList(Array(), $arFilter, false, false, $arSelect);
$arSections = array();
while ($arFields = $res->GetNext())
{
if (intval($arFields) > 0)
{
$arSections] = ;
} else
{
$arSections]=;
}
$arProducts] = $arFields;
}
if (!empty($arSections))
{
$SectFilter = Array('ID' => array_keys($arSections),"IBLOCK_ID"=>23);
$Sect_list = CIBlockSection::GetList(Array("NAME" => "ASC"), $SectFilter, false,
array('ID','NAME','IBLOCK_ID','IBLOCK_SECTION_ID','SECTION_PAGE_URL'));
while ($Section = $Sect_list->GetNext())
{
$arSections] =...
Рассмотрим вывод на сайте OpenCart любой информации, которая повторяется на всех страницах, в любом месте при помощи стандартных статей (страниц). Например, выведем текст доставки в карточке товара. Зайдем в файл:
/catalog/controller/product/product.php
после кода
$this->load->language('product/product');
вставим
$this->load->model('catalog/information');
$information_info = $this->model_catalog_information->getInformation(6);
$data = html_entity_decode($information_info, ENT_QUOTES, 'UTF-8');
где 6 - id страницы (статьи)
В карточке товара, файл
/catalog/view/theme/sela/template/product/product.twig
в нужном месте выведем информацию:
{{ dostavka }}
После всех действий обновляем модификаторы и наслаждаемся работой. Кстати,...
Для создания дополнительного поля в карточке товара в CMS OpenCart 3.x нужно добавить запись в БД, добавить код в админ-панель (back-end) и на фронтальную часть сайта (front-end).
Создадим поле description2 в БД (с настройками как и поле description)
Далее, откроем файл /admin/view/template/catalog/product_form.twig
после блока
<div class="form-group">
<label class="col-sm-2 control-label" for="input-description{{ language.language_id }}">{{ entry_description }}</label>
<div class="col-sm-10">
<textarea name="product_description" placeholder="{{ entry_description }}" id="input-description{{ language.language_id }}"...
Выведем в любом месте сайта (через шорткод) нужное количество последних страниц (записей) родительской страницы (рубрики). В файле functions.php пропишем следующий код:
function wpschool_recent_posts_shortcode( $atts, $content = null ) {
global $post;
$post_id = get_the_ID();
$stati_children = new WP_Query(array(
'post_type' =>...
Для начала нужно установить GIT, например здесь скачиваем установщик (кнопка Download)
Устанавливаем, все по умолчанию оставляем. Далее переходим на сайт github и регистрируемся (если еще нет аккаунта) или входим в свой аккаунт (если ранее регистрировались). После входа - создаем новый репозиторий (кнопка new):
Заполняем имя проекта, описание и нажимаем кнопку Create repository:
Далее в консоли OpenServer или терминале phpStorm перейдем в папку...
Рассмотрим на примере подключение saas к проекту на Laravel. В каталоге resources если нет папки saas - создайте, в ней файл, например app.scss.
Рассмотрим настройки подключения стилей, препроцессоров и других инструментов. В корне проекта есть файл webpack.mix.js - в нем будет прописаны пути для компиляции, в нашем случае его конечная часть будет выглядеть вот так:
mix.js('resources/js/app.js', 'public/js')
.sass('resources/sass/app.scss', 'public/css');
вторая...
На самом деле, что бы написать простой плагин для ВордПресс, потребуется не более 10 минут. В статье рассмотрим как написать простой плагин для вывода трех последних статей в любом месте сайта, используя шорткод.
Для начала в папке с проектом /wp-content/plugins/ создадим название папки-плагина, например, ms-plugin. Внутри этой папки создадим 2 файла, первый ms_plugin.php - обработчик кода, второй ms.css - стили...