Самоделки различных веб-штук

Давно не писал с момента публикации последней новости. Не потому, что не о чем, а потому как работы вал, делаю наяву, делаю во сне, и во время еды и даже в метро по работе читаю. Но писать конечно надо, поэтому расскажу о последних событиях.

С лета были выполнены пожалуй тысячи веб-задач и среди них, как это обычно бывает ставились те, которые я раньше не делал — но, мне в копилку опыт, а заказчикам — классный функционал.

Сортировка с помощью PHP

В первую очередь массу свободного времени поглощает сайт недвижимости, для которого постоянно улучшается UX и функционал — были переработаны: мобильная версия (в частности отказ от кнопок на слайдах в пользу слайда пальцем), улучшены страницы объектов, допиливается и оптимизируется сортировка для упрощения работы с агентами и поиска информации. Кроме того, регулярно приходится модерировать публикуемые новости в группах и добавленные объекты на сайтах. Из бэк-енда стоит упоминуть также продолжительные работы над скоростью загрузки страниц.

Сортировка объектов недвижимости PHP
На скрине почти законченная сортировка объектов из базы данных, реализованная с помощью php

 

<div class=»insidelist»>
<h2>Продажа</h2>
<?php
$args = array(
‘post_type’ => ‘portfolio’,
‘post_status’=>’publish’,
‘posts_per_page’=>-1,
‘orderby’ => ‘meta_value_num’,
‘meta_key’ => ‘value price’,
‘order’=> ‘DESC’,
‘tax_query’ => array(
‘relation’ => ‘AND’,
array (
‘taxonomy’ => ‘portfolio-type’,
‘field’ => ‘slug’,
‘terms’ => ‘doma’) ,
array (
‘taxonomy’ => ‘portfolio-type’,
‘field’ => ‘slug’,
‘terms’ => ‘prodazha’)
)
);
// the query
$wpb_all_query = new WP_Query( $args ); ?>

<?php if ( $wpb_all_query->have_posts() ) : ?>
<!— the loop —>
<?php while ( $wpb_all_query->have_posts() ) : $wpb_all_query->the_post(); ?>
<div class=»objlist_1″>
<ul>
<li># <?= get_the_ID(); ?></li>
<li><a href=»<?php the_permalink(); ?>»><?php the_title(); ?></a></li>
<? // Адрес
$address = get_meta(‘address’);
?><? if ($address != ‘null’) : ?><li>Адрес:

<?= $address; ?> <?php if( current_user_can(‘editor’) || current_user_can(‘administrator’) ) { ?> <? // Адрес
$address1 = get_meta(‘address1’);
?>
<? if ($address1 != ‘null’) : ?>
<?= $address1; ?><? endif; ?> <?php } ?></li><? endif; ?>
<li>Цена: <?php $number = get_post_meta($post->ID, ‘value price’, true); echo number_format($number); ?> Рублей</li>
<li><? // Площадь
$square = get_meta(‘value area’);
$square_unit = get_meta(‘unit’) ?: ‘кв.м’;
?>
Площадь: <?= $square; ?> кв.м.</li>
<? // Этажи
$floor = get_meta(‘floor’);
$floors_total = get_meta(‘floors_total’);
?><? if ($floors_total != ‘null’) : ?><li>Этаж: <?= $floor; ?> / <?= $floors_total; ?></li><? endif; ?>
<li>Комнат:<?
$studio=get_meta(‘studio’);
if (has_term(201 /* Дома */, ‘portfolio-type’)) {
print_meta(‘rooms’, ‘rooms’, ‘int’);}
elseif (has_term(200 /* квартиры */, ‘portfolio-type’) && $studio != ‘1’) {
print_meta(‘rooms’, ‘rooms’, ‘int’);}
if (has_term(200 /* квартиры */, ‘portfolio-type’) && $studio == ‘1’) {
print_meta(‘studio’,’studio’, ‘int’);}
?></li>
</ul>
</div>
<?php endwhile; ?>
<!— end of the loop —>
<?php wp_reset_postdata(); ?>

<?php else : ?>
<p><?php _e( ‘Ничего не найдено’ ); ?></p>
<?php endif; ?>
</div>

SEO-оптимизация сайта

Контекстная реклама для услуг системного администратора оказалась черезвычайно дорогой (на первых позициях до 300 рублей за клик). И поэтому я во всю его оптимизирую для лучшей индексации поисковыми системами, для этого сайт добавлен во множество каталогов, на карты google, yandex, 2gis, регулярно публикуются статьи и ведутся соц.сети. Рост медленный но стабильный, а главное недорогой! 300 рублей за клик все таки не вариант.

Большинство работ к счастью сделал еще при создании сайта, поэтому переходим в количество информации в сети о сайте.

SEO продвижение сайта
SEO продвижение сайта

Сайт-визитка на весь экран

Дальше был реализован сайт для бара Тапки. Простой, но информативный. Среди задач — лента новостей из вконтакте, лента картинок Instagram, API google карт с небольшими доработками — отключение скролла на карте и центрирование. Естественно все это с мобильной версией.

Задача довольно простая и решается с помощью CSS на шаблоне вордпресса.

Сайт визитка на весь экран
Сайт визитка на весь экран

Форум с единым логином

Проблема всех форумов — отдельный логин. Почти у любого сайта — логин на сайте и на форуме — это разная вещь. В работе над сайтом и форумом клуба прогнозистов этот недостаток был устранен с помощью WordPress и bbpress, а также доступен вход с помощью социальных сетей. Это значительно упрощает регистрацию и позволяет сразу начать общаться новым пользователям.

Единый логин на сайт и форум
Единый логин на сайт и форум

Верхняя панель для веб-версии игры

Трудоемкая работа целой недели — панель для веб-версии игры, с кучей обычных и нестандартных решений — непрямые углы блока, эффекты наведения, отображение на разных устройствах и браузерах, контактная форма без php, анимации и скрипты событий появления-исчезания блоков, апи социальных сетей — лайки, поделиться. В общем, что и говорить, потратив целую неделю на блок в шапке сделал настоящий образец качественного интерактивного меню.

Контактная форма без php
Контактная форма без php

Сайты в разработке

В разработке еще ведутся несколько проектов, думаю публиковать пока не буду, а поделюсь с вами новостями по мере их реализации, а пока вот небольшой тизер на проект наподобие Бешеной Сушки.

Красивый дизайн сайта
Красивый дизайн сайта

Нажмите лайк и поделиться, мне это очень пригодится!