Всё обо всём или попытки заработка

Попытки заработка в интернете

default_thumbВсё никак не мог навернуться написать статью о Консоли в wordpress. Собрал много полезных хаков, но использую только некоторые. Вот о них речь и пойдёт.

Удаление меню из Доски

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

function remove_menus () {
global $menu;
$restricted = array(__('Dashboard'), __('Posts'), __('Media'), __('Links'), __('Pages'), __('Appearance'), __('Tools'), __('Users'), __('Settings'), __('Comments'), __('Plugins'));
end ($menu);
while (prev($menu)){
$value = explode(' ',$menu[key($menu)][0]);
if(in_array($value[0] != NULL?$value[0]:”" , $restricted)){unset($menu[key($menu)]);}
}
}
add_action(’admin_menu’, ‘remove_menus’);


В значении $restricted указываем какие пункты меню удалить.

Смена лого без плагина

Данный хак я уэе описывал здесь

Отключение надписи : “Доступен WordPress *.*.*! Пожалуйста, обновитесь”.

Ну здесь всё понятно. Мне она покрайней мере только мешает. Защищать свой блог я пытаюсь сам, а каждый раз устанавливать новые версии которые кушаю всё больше и больше желания нет. Поэтому отключаем её добавив в functions.php


if ( !current_user_can( 'edit_users' ) ) {
add_action( 'init', create_function( '$a', "remove_action( 'init', 'wp_version_check' );" ), 2 );
add_filter( 'pre_option_update_core', create_function( '$a', "return null;" ) );
}

Удаление виджетов с доски

Ну здесь также. Нагружает. Иногда бывает медленный интернет - хочется побыстрому заскочить в админку, написать пару слов и свалить, а эти виджеты грузят страницу, при том что я ними совершенно не пользуюсь. Поэтому - удаляем вставив в functions.php


function example_remove_dashboard_widgets() {
// Globalize the metaboxes array, this holds all the widgets for wp-admin
global $wp_meta_boxes;// Remove the incomming links widget
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links']); // Remove right now
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_right_now']);
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']);
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_secondary']);
} // Hoook into the ‘wp_dashboard_setup’ action to register our function
add_action(’wp_dashboard_setup’, ‘example_remove_dashboard_widgets’ );

Мониторинг сервера из админки

Вот это я считаю самым полезным хаком и думаю что не требуется слов чтобы объяснять что это такое. Просто правим functions.php своей темы и наслаждаемся.

function slt_PHPErrorsWidget() {
$logfile = ‘/home/path/logs/php-errors.log’; // Enter the server path to your logs file here
$displayErrorsLimit = 100; // The maximum number of errors to display in the widget
$errorLengthLimit = 300; // The maximum number of characters to display for each error
$fileCleared = false;
$userCanClearLog = current_user_can( ‘manage_options’ );
// Clear file?
if ( $userCanClearLog && isset( $_GET["slt-php-errors"] ) && $_GET["slt-php-errors"]==”clear” ) {
$handle = fopen( $logfile, “w” );
fclose( $handle );
$fileCleared = true;
}
// Read file
if ( file_exists( $logfile ) ) {
$errors = file( $logfile );
$errors = array_reverse( $errors );
if ( $fileCleared ) echo ‘<p><em>File cleared.</em></p>’;
if ( $errors ) {
echo ‘<p>’.count( $errors ).’ error’;
if ( $errors != 1 ) echo ’s’;
echo ‘.’;
if ( $userCanClearLog ) echo ‘ [ <b><a href="'.get_bloginfo("url").'/wp-admin/?slt-php-errors=clear" onclick="return confirm(\'Are you sure?\');">CLEAR LOG FILE</a></b> ]‘;
echo ‘</p>’;
echo ‘<div id=”slt-php-errors” style=”height:250px;overflow:scroll;padding:2px;background-color:#faf9f7;border:1px solid #ccc;”>’;
echo ‘<ol style=”padding:0;margin:0;”>’;
$i = 0;
foreach ( $errors as $error ) {
echo ‘<li style=”padding:2px 4px 6px;border-bottom:1px solid #ececec;”>’;
$errorOutput = preg_replace( ‘/\[([^\]]+)\]/’, ‘<b>[$1]</b>’, $error, 1 );
if ( strlen( $errorOutput ) > $errorLengthLimit ) {
echo substr( $errorOutput, 0, $errorLengthLimit ).’ [...]‘;
} else {
echo $errorOutput;
}
echo ‘</li>’;
$i++;
if ( $i > $displayErrorsLimit ) {
echo ‘<li style=”padding:2px;border-bottom:2px solid #ccc;”><em>More than ‘.$displayErrorsLimit.’ errors in log…</em></li>’;
break;
}
}
echo ‘</ol></div>’;
} else {
echo ‘<p>No errors currently logged.</p>’;
}
} else {
echo ‘<p><em>There was a problem reading the error log file.</em></p>’;
}
}

// Add widgets
function slt_dashboardWidgets() {
wp_add_dashboard_widget( ’slt-php-errors’, ‘PHP errors’, ’slt_PHPErrorsWidget’ );
}
add_action( ‘wp_dashboard_setup’, ’slt_dashboardWidgets’ );

Ну вроде бы пока что всё. Фух. Осилил. Кто что использует - в камменты!

Накалякал Ksail On января - 8 - 2010 CSS, Java, Php, jQuery

change-wordpress-login-logo

Данный хак очень пригодится для людей которые делают блоги под ключ. Логотип wordpress конечно симпатичный, но иногда заказчики хотят что-то своё. Для этого конечно можно использовать плагин и нагружать итак тяжёлый движок, либо использовать ниже приведённый хак.

Итак всё что нам потребуется это приготовить логотип и дописать код в файл functions.php нашей темы.

function my_custom_login_logo() {
echo '<style type="text/css">
h1 a { background-image:url('.get_bloginfo('template_directory').'/images/ваш-логотип.gif) !important; }
</style>';
}add_action('login_head', 'my_custom_login_logo');

Вот и всё. Всем приятной работы.

Накалякал Ksail On декабря - 24 - 2009 CSS, Java, Php, jQuery

php-curl-wordpressКак известно, постоянные читатели вашего блога редко нажимают на рекламу размещённую у вас, а также она их очень раздражает. А я как раз в инете нашёл решение данной проблемы, так как реклама в постах у нас будет показываться теперь только в старых.

Для этого надо вставить в файл functions.php вашей темы:

function is_old_post($post_id=null){
$days = 15;
global $wp_query;
if(is_single() || is_page()) {
if(!$post_id) {
$post_id = $wp_query->post->ID;
}
$current_date = time();
$offset = $days *60*60*24;
$post_id = get_post($post_id);
$post_date = mysql2date('U',$post_id->post_date);
$cunning_math = $post_date + $offset;
$test = $current_date - $cunning_math;
if($test > 0){
$return = true;
}else{
$return = false;
}
}else{
$return = false;
}
return $return;
}

Теперь в файле single.php нужно обрамить рекламу и всё.

<?php if(is_old_post()){ ?>
INSERT AD CODE HERE
<?php } ?>

Все твердят web 2.0, а что это такое ни кто объяснить не может.

З.Ы. Сегодня носил свою кошечку в ветлечебницу. Всё оказалось не так страшно как я думал.

Накалякал Ksail On декабря - 7 - 2009 CSS, Java, Php, jQuery

tags1
Использование хаков может довольно облегчить работу с wordpress`ом, а также позволит быстро его модивицировать. Ниже я приведу код который будет автоматически вставлять в конец каждого поста биографию автора.

Всё что нам нужно это вставить код в файл functions.php вашей темы.

function get_author_bio ($content=''){
global $post;$post_author_name=get_the_author_meta("display_name");
$post_author_description=get_the_author_meta("description");
$html="<div class='clearfix' id='about_author'>\n";
$html.="<img width='80' height='80' class='avatar' src='http://www.gravatar.com/avatar.php?gravatar_id=".md5(get_the_author_email()). "&default=".urlencode($GLOBALS['defaultgravatar']).”&size=80&r=PG’ alt=’PG’/>\n”;
$html.=”<div class=’author_text’>\n”;
$html.=”<h4>Author: <span>”.$post_author_name.”</span></h4>\n”;
$html.= $post_author_description.”\n”;
$html.=”</div>\n”;
$html.=”<div class=’clear’></div>\n”;
$content .= $html;
}return $content;
}add_filter(’the_content’, ‘get_author_bio’);

Накалякал Ksail On октября - 30 - 2009 CSS, Java, Php, jQuery

tweetmeme-shortcode-wordpress
Tweetmeme это популярный сервис по ретвитам на ваш блог. Ниже приведённый код позволит вам легко внести данный сервис и на ваш блог.

И так нам надо вставить код в файл functions.php вашей темы:

function tweetmeme(){
return '<div class="tweetmeme"><script type="text/javascript" src="http://tweetmeme.com/i/scripts/button.js"></script></div>';
}
add_shortcode('tweet', 'tweetmeme');

Теперь в файлах index.php и single.php (page.php) нужно вставить функцию вызова тоесть [tweet] в том месте где мы хотели бы видеть данную кнопку.

Накалякал Ksail On октября - 15 - 2009 CSS, Java, Php, jQuery

Подписочка

Облачко


WMR- !