Category Archives: Wordpress

Wordpress

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)

Премахване на Content sidebar от twentyfourteen ( WordPress)

Идеята е да се премахне десният сайдбар (Content sidebar) на стандартната тема twentyfourteen  в WordPress.

1. прави се child , twentyfourteen-child
2. twentyfourteen-child/style.css

/*
Description: Child of theme by martin
Author: Martin Petrov
Version: 0.0.1
Template: twentyfourteen
*/

@import url('../twentyfourteen/style.css');

.hentry { max-width: 90%; }

.site-content .entry-header,
.site-content .entry-content,
.site-content .entry-summary,
.site-content .entry-meta,
.page-content {
max-width: 90%;
}

.post-navigation,
.image-navigation {
max-width: 90%;
}

.comments-area {
max-width: 400px;
margin-left: 20px;
margin-right: 20px;
}

3.  twentyfourteen-child/functions.php

<?php

// unregister sidebar to remove Right sidebar of Twenty Fourteen
function remove_right_sidebar(){ unregister_sidebar( 'sidebar-2' ); }

add_action( 'widgets_init', 'remove_right_sidebar', 11 );

?>

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)

Всички коментари се записват в табицата "wp_comments"

mysql> describe wp_comments;
+----------------------+---------------------+------+-----+---------------------+----------------+
| Field                | Type                | Null | Key | Default             | Extra          |
+----------------------+---------------------+------+-----+---------------------+----------------+
| comment_ID           | bigint(20) unsigned | NO   | PRI | NULL                | auto_increment |
| comment_post_ID      | bigint(20) unsigned | NO   | MUL | 0                   |                |
| comment_author       | tinytext            | NO   |     | NULL                |                |
| comment_author_email | varchar(100)        | NO   |     |                     |                |
| comment_author_url   | varchar(200)        | NO   |     |                     |                |
| comment_author_IP    | varchar(100)        | NO   |     |                     |                |
| comment_date         | datetime            | NO   |     | 0000-00-00 00:00:00 |                |
| comment_date_gmt     | datetime            | NO   | MUL | 0000-00-00 00:00:00 |                |
| comment_content      | text                | NO   |     | NULL                |                |
| comment_karma        | int(11)             | NO   |     | 0                   |                |
| comment_approved     | varchar(20)         | NO   | MUL | 1                   |                |
| comment_agent        | varchar(255)        | NO   |     |                     |                |
| comment_type         | varchar(20)         | NO   |     |                     |                |
| comment_parent       | bigint(20) unsigned | NO   | MUL | 0                   |                |
| user_id              | bigint(20) unsigned | NO   |     | 0                   |                |
+----------------------+---------------------+------+-----+---------------------+----------------+

Стойностите на колоната comment_approved са: 0 , 1, spam

# Изтриване на всички not approved коментари
DELETE FROM wp_comments WHERE comment_approved = 0;

# Изтриване на всички approved коментари
DELETE FROM wp_comments WHERE comment_approved = 1;

# Изтриване на всички спам коментари
DELETE FROM wp_comments WHERE comment_approved = 'spam';

# Изтриване по дата
DELETE FROM wp_comments WHERE comment_date > '2004-11-15 01:10:04' AND comment_date <= '2004-11-20 00:10:04'

# Изтриване на всички коментари
TRUNCATE wp_comments;

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', '[email protected]', '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)

Как да направим WordPress на Български

Идеята е да се смени езика на WordPress от стандартна английска инсталация на Български

vim wp-config.php

define('WPLANG', 'bg_BG');

След това изтегляме българската версия на wordpres

cd /tmp
wget http://bg.wordpress.org/wordpress-3.6-bg_BG.zip
unzip wordpress-3.6-bg_BG.zip

#Копираме папката "languages" от българската версия на WordPressв текущата инсталация- папка wp-content
cp -Rvp /tmp/wordpress/wp-content/languages/ wp-content/

Това е :)

VN:F [1.9.22_1171]
Rating: 5.0/5 (2 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 2 votes)

Гласуване за всички публикации в gd star rating

GD Star Rating е рейтинг модул за WordPress. Идеята му е хората да могат да гласуват (и … още нещо) :)

В случай че го слагаме на стар блог които има вече написани публикации и искаме всичките публикации да имат поне о 1  глас от 10 точки има два варианта:
1. На ръка страницираме всичките публикации и си гласуваме. Лесно а (хаха :)  )2. От базата сетваме ;) :

update wp_gdsr_data_article set user_votes=10,user_voters=1 where user_votes=0 and user_voters=0;

Този вариант сякаш много труден :)))

Успех!

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

Прехвърляне на един WordPress към Друг

Идеята е следната:
Имам два домейна "sait1.com" и "sait2.com" . Идеята е информацията със снимките от "sait1.com" да се прехвърли в "sait2.com".

Sait1.com :
1. Прави се export на базата в xml файл.

Sait2.com:
1. Инсталира се плъгина за WordPress Import
2. Импортира се предварително създадения xml файл от "sait1.com"
3. Копират се снимките от "sait1.com" в "sait2.com" т.е.
/var/sait1.com/wp-content/uploads/ => /var/sait2.com/wp-content/uploads /
4. Инсталира се плъгина: Search and Replace
5. От плъгина "Search and Replace" се въвежда:
Search for: "sait1.com"
Replaced with: ""

PS: По този метод се прехвърля на 100% целия WordPress , а не само базата с линкове на снимките към стария сайт т.е.(вместо да се прехвърлят снимките на sait2.com се ползват
линкове от sait1.com).

Извод: Не ми харесва Import+Export функцията на WordPress.

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