Category Archives: Web

Web

ckeditor -- custom toolbar

Ето моите настройки за ckeditor toolbar:

CKEDITOR.replace( 'editor1',{filebrowserBrowseUrl: '/editor/ckfinder/ckfinder.html',
enterMode : CKEDITOR.ENTER_BR,
width: '700px',
language: 'bg',
height: '200px',
toolbarGroups: [
{ name: 'mode', groups: [ 'mode'] },
{ name: 'clipboard', groups: [ 'clipboard', 'undo' ] },
{ name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] },
{ name: 'colors' },
{ name: 'links' },
{ name: 'styles' },
{ name: 'insert' },
{ name: 'paragraph', groups: [ 'list', 'indent', 'blocks', 'align' ] }
]
});

Снимка как изглежда:

ckeditor-custom-toolbar-martin

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Carousel image height проблем с Chrome.

Проблема е, че под Chrome и Safari снимките не се зареждат на 100%, а малка част т.е. не определя правилно височината.
Ето какъв е проблема:

carousel chrome height image problem
carousel chrome height image problem

Решение на проблема е един малък css fix:

<style>
.carousel li img{ height:130px; }
</style>

PS: Благодарности на Rimotevst за репорта на проблема.

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Правилно Записване на ipaddress v4 в mysql && php

Тип в MySQL:

INT(11) UNSIGNED

Функции за работа от MySQL

INET_ATON и INET_NTOA

Пример:
query : select INET_ATON('127.0.0.1');
result: 2130706433
query : select INET_NTOA('2130706433');
result: 127.0.0.1

Функции за работа с php
ip2long() и long2ip()

Правят същите неща като тези в MySQL, т.е.:

ip2long($arg) -> INET_ATON('$arg')
long2ip($arg) -> INET_NTOA('$arg')

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Експорт на публикации от WordPress ползващ Thrive Content Builder

Експорт на стандартна публикация

<item>
        <title>Заглавие</title>
        <link>ПЪЛНО URL на публикацията(http://…)</link>
        <pubDate>Mon, 08 Dec 2008 06:59:21 +0000</pubDate>
        <dc:creator><![CDATA[admin]]></dc:creator>
        <guid isPermaLink="false">http://mpetrov.net/?p=22</guid>
        <description></description>
        <content:encoded><![CDATA[Content]]></content:encoded>
        <excerpt:encoded><![CDATA[]]></excerpt:encoded>
        <wp:post_id>22</wp:post_id>
        <wp:post_date>2008-12-08 08:59:21</wp:post_date>
        <wp:post_date_gmt>2008-12-08 06:59:21</wp:post_date_gmt>
        <wp:comment_status>open</wp:comment_status>
        <wp:ping_status>open</wp:ping_status>
        <wp:post_name>url на публикацията</wp:post_name>
        <wp:status>publish</wp:status>
        <wp:post_parent>0</wp:post_parent>
        <wp:menu_order>0</wp:menu_order>
        <wp:post_type>post</wp:post_type>
        <wp:post_password></wp:post_password>
        <wp:is_sticky>0</wp:is_sticky>
        <category domain="category" nicename="internet"><![CDATA[Интернет]]></category>
        <wp:postmeta>
            <wp:meta_key>_edit_last</wp:meta_key>
            <wp:meta_value><![CDATA[1]]></wp:meta_value>
        </wp:postmeta>
        <wp:postmeta>
            <wp:meta_key>_wp_old_slug</wp:meta_key>
            <wp:meta_value><![CDATA[име]></wp:meta_value>
        </wp:postmeta>

    </item>

Експорт на публикация от блог ползващ плъгина Thrive Content Builder.

<item>

<content:encoded><![CDATA[]]></content:encoded>

<wp:postmeta>
           <wp:meta_key>tve_save_post</wp:meta_key>
            <wp:meta_value><![CDATA[<p>Content/p>]]></wp:meta_value>
        </wp:postmeta>

</item>

Тук се вижда, че content:encoded е празно и когато този export (xml) се import в друг wordpress без Thrive Content Builder няма да се покаже съдържанието. Според това което прочетох в сайта на Thrive Content Builder трябва да се премести и плъгина което е глупаво като причина защото не е задължително на новия сайт да се ползва този плъгин.

Ето го и решението

Необходимо е съдържанието от tve_save_post да се постави в content:encoded и така стандартна WP инсталация ще може да прочете съдържанието на публикацията, т.е:

<item>
        <title>Заглавие</title>
        <link>ПЪЛНО URL на публикацията(http://…)</link>
        <pubDate>Mon, 08 Dec 2008 06:59:21 +0000</pubDate>
        <dc:creator><![CDATA[admin]]></dc:creator>
        <guid isPermaLink="false">http://mpetrov.net/?p=22</guid>
        <description></description>
        <content:encoded><![CDATA[Content]]></content:encoded>
        <excerpt:encoded><![CDATA[]]></excerpt:encoded>
        <wp:post_id>22</wp:post_id>
        <wp:post_date>2008-12-08 08:59:21</wp:post_date>
        <wp:post_date_gmt>2008-12-08 06:59:21</wp:post_date_gmt>
        <wp:comment_status>open</wp:comment_status>
        <wp:ping_status>open</wp:ping_status>
        <wp:post_name>url на публикацията</wp:post_name>
        <wp:status>publish</wp:status>
        <wp:post_parent>0</wp:post_parent>
        <wp:menu_order>0</wp:menu_order>
        <wp:post_type>post</wp:post_type>
        <wp:post_password></wp:post_password>
        <wp:is_sticky>0</wp:is_sticky>
        <category domain="category" nicename="internet"><![CDATA[Интернет]]></category>
        <wp:postmeta>
            <wp:meta_key>_edit_last</wp:meta_key>
            <wp:meta_value><![CDATA[1]]></wp:meta_value>
        </wp:postmeta>
        <wp:postmeta>
            <wp:meta_key>_wp_old_slug</wp:meta_key>
            <wp:meta_value><![CDATA[име]></wp:meta_value>
        </wp:postmeta>

<wp:postmeta>
           <wp:meta_key>tve_save_post</wp:meta_key>
            <wp:meta_value><![CDATA[<p>Content/p>]]></wp:meta_value>
        </wp:postmeta>

    </item>

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Изтриване на всички постове от WordPress през MySQL

#Листва постовете от категория 2

SELECT * FROM TABLE_PREFIX_posts p
JOIN TABLE_PREFIX_term_relationships r ON p.ID = r.object_id
JOIN TABLE_PREFIX_term_taxonomy tt ON r.term_taxonomy_id = tt.term_taxonomy_id
JOIN TABLE_PREFIX_term_taxonomy t ON tt.term_id = t.term_id
WHERE t.term_id = 2;

#Листва всички постове

SELECT * FROM TABLE_PREFIX_posts p
JOIN TABLE_PREFIX_term_relationships r ON p.ID = r.object_id
JOIN TABLE_PREFIX_term_taxonomy tt ON r.term_taxonomy_id = tt.term_taxonomy_id
JOIN TABLE_PREFIX_term_taxonomy t ON tt.term_id = t.term_id;

#Изтрива постовете от категория 36
delete a,b,c,d
FROM TABLE_PREFIX_posts a
LEFT JOIN TABLE_PREFIX_term_relationships b ON ( a.ID = b.object_id )
LEFT JOIN TABLE_PREFIX_postmeta c ON ( a.ID = c.post_id )
LEFT JOIN TABLE_PREFIX_term_taxonomy d ON ( d.term_taxonomy_id = b.term_taxonomy_id )
LEFT JOIN TABLE_PREFIX_terms e ON ( e.term_id = d.term_id )
WHERE e.term_id =36;

 

#Изтрива всички постове
delete a,b,c,d
FROM TABLE_PREFIX_posts a
LEFT JOIN TABLE_PREFIX_term_relationships b ON ( a.ID = b.object_id )
LEFT JOIN TABLE_PREFIX_postmeta c ON ( a.ID = c.post_id )
LEFT JOIN TABLE_PREFIX_term_taxonomy d ON ( d.term_taxonomy_id = b.term_taxonomy_id )
LEFT JOIN TABLE_PREFIX_terms e ON ( e.term_id = d.term_id );

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Добавяне на администратор в WordPress от MySQL

#Добавяне на тестов администратор

INSERT INTO `TABLE_PREFIX_users` (`ID`, `user_login`, `user_pass`, `user_nicename`, `user_email`, `user_url`, `user_registered`, `user_activation_key`, `user_status`, `display_name`) VALUES ('99999', 'martinwpmartin', md5('superparola'), 'Martin Petrov', 'martin@dhstudio.bg', 'http://mpetrov.net', '2014-04-04 00:00:00', ", '0', 'Martin Petrov');

INSERT INTO `TABLE_PREFIX_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, '99999', 'TABLE_PREFIX_capabilities', 'a:1:{s:13:"administrator";s:1:"1";}');

INSERT INTO `TABLE_PREFIX_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, '99999', 'TABLE_PREFIX_user_level', '10');

#Изтриване на тестовия администратор

delete from `TABLE_PREFIX_users` where ID='99999';
delete from `TABLE_PREFIX_usermeta` where user_id='99999';

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

WordPress: Промяна на стандартното jquery в темплейт

file: functions.php
//Making jQuery Google API
function modify_jquery() {
if (!is_admin()) {
// comment out the next two lines to load the local copy of jQuery
wp_deregister_script('jquery');
wp_register_script('jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js', false, '1.8.1');
wp_enqueue_script('jquery');
}
}
add_action('init', 'modify_jquery');

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Премахване на facebook sharer cache

Проблема е следния: Имам едно url което искам да споделя във фейсбук обаче съм направил промени по съдържанието. Фейсбук не разбира(още не е разбрал, че има промени) и показва старото съдържание. Идеята е да кажем на фейсбук(веднага) да покаже новото съдържание т.е. да изтрием кеша(информацията) на фейсбук за съответното url.

Това се прави с debug-ера на фейсбук които е изключително полезен :

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Намаляване на html output-а през php

Идеята е да се премахнат някои излишни байтове в output html през php

Без обяснения, а директно с пример:

<?php
ob_start();
echo "line 1

line 4

line 6

line 10";

$search = array(
 '/\>[^\S ]+/s', //strip whitespaces after tags, except space
 '/[^\S ]+\</s', //strip whitespaces before tags, except space
 '/(\s)+/s' // shorten multiple whitespace sequences
 );
 $replace = array(
 '>',
 '<',
 '\\1'
 );
 

$output = ob_get_contents();

$output = preg_replace($search, $replace, $output);

ob_end_clean();
echo $output;exit;

?>

Вижда се, че вместо да се листнат 10 реда(в сорса разбира се) се листват 4 реда 😉

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Prestashop- премахване на малките снимки в категориите

Използваме: свободната системата за онлайн магазини Prestashop .

Когато натиснем на някои категории с под категории ни извежда снимки на под категориите.

prestashop_premahvane_thumbnains_kategorii_1

Аз обаче искам да не ми излизат тези картинки(налични или не)
т.е. искам да се листват само продуктите т.е.:

prestashop_premahvane_thumbnains_kategorii_2

За да се постигне това се едитва : themes/default-bootstrap/category.tpl

1. Преди {if isset($subcategories)} (на ред 73) добавяме: {*

2. Преди {if $products} (на ред 101) добавяме *}

На практика коментираме показването на тъмбнейлите 🙂

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)