АРХИВ ПО ТЭГУ "ПРОГРАММИРОВАНИЕ"
ЯНВАРЬ 22, 2009

Привет!

Седня у меня по дороге домой с работы возникла мысль о том, как движется программист по ступенькам языков программирования. Итог — график:

grap programmer Уровни жизни программиста %d0%b8%d0%b4%d0%b5%d0%b8

График - Уровни жизни программиста

Зеленая линия показывает уровень поддержки языка, и трендовое восхождение вверх — на самом деле на графике не отражено изменения высокоуровневости на длительный период, т.к. там линия тренда идет под бОльшим углом, т.е. через некоторое время программист превращается в архитектора и мыслит высоким уровнем (UML, BPM, …).

Голубая линия показывает уровень поддержки усталости от IT, чем она выше, тем больше устал программист от своей работы icon smile Уровни жизни программиста %d0%b8%d0%b4%d0%b5%d0%b8 Т.е. в конце концов ему это все надоедает и он перестает работать на кого-то в IT — занимается другим дело, в частности может быть управленческие обязанности, трейдинг или свои проекты. Но в конце жизни (это не показано на графике), он все же устанавливает значение усталости от IT где-то чуть ниже середины (50), т.к. он уже работает себе в удовольствие.

Что-то типа того, быстрая мысль, поэтому не очень внятная.

icon smile Уровни жизни программиста %d0%b8%d0%b4%d0%b5%d0%b8

ЯНВАРЬ 4, 2009

Как реализовать динамические мета тэги keywords и description для любой страницы.

Сейчас я пишу небольшой проектик на Cakephp 1.2 и у меня возник вопрос, как мне генерировать мета тэги для разных страниц свои, чтобы оптимизировать сайт под поисковые запросы. Я нашел несколько статей, описывающих как это сделать, и в итоге я поступил так:

1) Нужно сделать Helper класс, например, MetaHelper. И поместить в него следующий код:

<?php
	class MetaHelper extends AppHelper {
		var $keywords = 'TODO Default keywords';
		var $description = 'TODO Default description';

		function afterRender() {
			$view = ClassRegistry::getObject('view');
			$view->set('keywords_for_layout', $this->keywords);
			$view->set('description_for_layout', $this->description);
		}

		function setKeywords($s) {
			if (!empty($s)) {
				$this->keywords = $s;
			}
		}

		function setDescription($s) {
			if (!empty($s)) {
				$this->description = $s;
			}
		}
	}
?>

2) Добавить этот хелпер в AppController.

3) В layout’е в <head> прописать:

    <meta name="description" content="<? echo $description_for_layout ?>" />
    <meta name="keywords" content="<? echo $keywords_for_layout ?>" />

Итог: Все очень просто. На самом деле этот подход можно использовать для установки любых других значений layout’а не доступных напрямую из view’хи.

Вот и все.

Страницы:1...7891011