В одном из предыдущих постов я писал что написал свой первый плагин — плагин для проверки уникальности текста в wordpress главная задача которого — не давать публиковать пост, если его уникальность ниже пороговой. Читать далее
Архив рубрики: PHP программисту
Закачка файлов по фтп с помощью cURL
Давно хочу сделать сайтик с полезными кусками кода на php и perl. Но пока никак руки не дойдут… пока буду постить тут, дабы не потерять.
$localfile = 'file_to_upload'; $fp = fopen($localfile, 'r'); curl_setopt($ch, CURLOPT_URL, 'ftp://ftp_login:password@ftp.domain.com/'.$_FILES['upload']['name']); curl_setopt($ch, CURLOPT_UPLOAD, 1); curl_setopt($ch, CURLOPT_INFILE, $fp); curl_setopt($ch, CURLOPT_INFILESIZE, filesize($localfile)); curl_exec ($ch); $error_no = curl_errno($ch); curl_close ($ch);
fclose($fp);
if ($error_no == 0) { $error = 'File uploaded succesfully.'; } else { $error = 'File upload error.'; }
WordPress и wp-noexternallinks
Наверное те кто решил монетизировать свой блог, ставили какие либо плагины для «обертывания» прямых внешних ссылок из текста в «непрямые», через какой нить редирект, на пример. Это нужно для уменьшениея внешних ссылок на станице, что ценится оптимизаторами.
Мне на глаза попался плагин wp-noexternallinks, который все ссылки пропускает через файл goto.php, для чего нужно пставить плагин, активировать, настроить его и прописать в .htpaccess строчку преобразования url-а (все это написано в документации).
Я поставил его, сделал все как написано, но при нажатии ссылки сначала выдавались некии ошибки на странице редиректа (goto.php) потом происходил редирект на испорчнеый адрес (к адресу добавлялася символ ; ).
Незнаю, толи у меня руки кривые, толи плагин кривоват, но я выкинул из этого файла все ненужно и убрал этот добавленый зачем то символ. Вот что осталось:
<?php
header(‘Content-type: text/html; charset=»utf-8″‘,true);
$url=$_SERVER[‘QUERY_STRING’];
if($url)
{
$url=’http://’.urldecode($url);
@header(‘Location: ‘.$url);
}
?>
<html>
<head>
<title></title>
<meta http-equiv=»Content-Type» content=»text/html; charset=utf-8″ />
<meta name=»robots» content=»noindex,nofollow» />
<?php if($url) echo ‘<meta http-equiv=»refresh» content=»0; url=’.$url.'» />’; ?>
</head>
<body style=»margin:0;»>
Redirecting…
</body>
</html>
С таки файлом редирект работает правильно и без ошибок.
Код для вырезки из текста THML тэгов.
Некоторые скажут что есть стандартная функция, для вырезки ВСЕХ HTML тэгов… а я предлагаю Вам код который вырезает только указанные тэги, или оставляет только указанные тэги.
Это может быть полезно, например для вырезки ненужных тэков в комментариях.
/**
* Allow these tags
*/
$allowedTags = ‘<h1><b><i><a><ul><li><pre><hr><blockquote>’;
/**
* Disallow these attributes/prefix within a tag
*/
$stripAttrib = ‘javascript:|onclick|ondblclick|onmousedown|onmouseup|onmouseover|
’.
‘onmousemove|onmouseout|onkeypress|onkeydown|onkeyup’;
/**
* @return string
* @param string
* @desc Strip forbidden tags and delegate tag-source check to removeEvilAttributes()
*/
function removeEvilTags($source)
{
global $allowedTags;
$source = strip_tags($source, $allowedTags);
return preg_replace(‘/<(.*?)>/ie’, «‘<‘.removeEvilAttributes(‘\\1′).’>'», $source);
}
/**
* @return string
* @param string
* @desc Strip forbidden attributes from a tag
*/
function removeEvilAttributes($tagSource)
{
global $stripAttrib;
return stripslashes(preg_replace(«/$stripAttrib/i», ‘forbidden’, $tagSource));
}
Новый раздел — В помощь PHP программисту.
С сегодняшнего дня я начинаю новую рубрику — В помощь PHP программисту.
В данном разделе я буду размещать все, что я считаю интересным по данной теме. Я сам програмлю на досуге уже пару лет, поэтому я найду что Вам сказать 🙂