2 заметки с тегом

Сделай сам

Причёсываю РСС ленту

Попробую реализовать идею:

Получить вид главной страницы для РСС ленты (в xml формате)

Ленту возьму со своего же блога: http://e2.yaruslan.ru/rss/. В Хроме лента отображается так:

Редактируем шаблон РСС ./www/system/default/rss/rss.tmpl.php
Добавляем ссылку на стили в РСС ленту (вторая строка):

<?= '<?xml version="1.0" encoding="utf-8"?>' ?> 
<?= '<?xml-stylesheet type="text/xsl" href="/style.xslt"?>'?> 
<rss version="2.0">
....

Добавляем новый файл /style.xslt на сервер:

<?xml version="1.0" encoding="utf-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
	<xsl:output method="html" indent="yes"/>
	<xsl:template match="channel">
		<html>
			<head>
				<title>
					<xsl:value-of select="title" />
				</title>
				<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
				<base href="http://e2.yaruslan.ru/" />
				<link rel="shortcut icon" type="image/x-icon" href="favicon.ico" />
				<link rel="stylesheet" type="text/css" href="themes/plain/styles/main.css?1574509235" />
			</head>
			<body>
				<div class="common">
					<div class="flag">
						<div class="header-content">
							<div class="header-description">
								<div class="title">
									<div class="title-inner">
										<div class="logo-marginal">
											<div class="e2-user-picture-container e2-external-drop-target">
												<img src="http://e2.yaruslan.ru/user/userpic@2x.jpg" />
											</div>
										</div>
										<h1>
											<span id="e2-blog-title">
												<xsl:value-of select="title" />
											</span>
										</h1>
									</div>
								</div>
							</div>
						</div>
					</div>
					<div class="content">
						<xsl:apply-templates select="item" /> 
					</div>
				</div>
			</body>
		</html>
	</xsl:template>
	<xsl:template match="item">
		<div id="e2-note-109" class="e2-note  ">
			<article>
				<h1 class="e2-published e2-smart-title">
					<a>
						<xsl:attribute name="href">
							<xsl:value-of select="link" />
						</xsl:attribute>
						<xsl:value-of select="title" />
					</a>
				</h1>
				<div class="e2-note-text e2-text e2-published">
					<xsl:value-of disable-output-escaping="yes" select="description"/>
				</div>
			</article>
		</div>
	</xsl:template>
</xsl:stylesheet>

Структуру тегов я взял с главной страницы блога, просто скопировал итоговый хтмл из браузера.

Результат

Браузеры Хром и Эдж нормально применили стили (это радует):

Браузеры ФФ и ИЕ проигнорировали стили, при этом постарались вывести хтмл записи:

Так как это всё сделано на прямую в шаблонах движка, то сохранится до первого обновления. Придётся мне каждый раз править шаблон РСС и добавлять строку стилей.

 Нет комментариев    76   8 мес   html   xml   РСС   Сделай сам   эгея   Я автор

Ручное объединение двух Эгей

Локальный блог я использовал как «структурированное хранилище» текстов. Поддерживать локальный движок надоело (проще говоря — лень). Почему бы не поделиться хорошими текстами с людьми, ведь в них нет ни чего секретного, в большинстве случаев это скопированные цитаты из других источников (с указанием источника).

Буду вливать информацию с локального блога на движке Эгея, в текущий блог на этом же движке. Переносить информацию буду на уровне БД. При этом важно сохранить расставленные теги с локальной БД. Копировать в ручную каждую запись из одного интерфейса в другой такой же, на мой взгляд не продуктивно.

Работаю с БД в любимой программе DBeaver. Открываю редактор и по очереди выполняю следующие запросы к локальной БД.

// 110 - максимальный id записи в текущей БД
// обновляю номера записей
// обновлять надо в обратном порядке
update e2BlogNotes  set id = id + 110 order by id desc 

// обновляю  теги 
// 56 - максимальный id тега в текущей БД
update e2BlogKeywords  set id = id + 56 order by id desc  

// обновляю связи  записей с тегами
update e2BlogNotesKeywords 
set NoteID = NoteID + 110, KeywordID = KeywordID + 56, id=id + 217 
order by id desc

Руками делаю экспорт локальных таблиц и импорт файлов в текущую БД

  • e2BlogKeywords → export to csv → e2BlogKeywords

— e2BlogNotes → export to csv → e2BlogNotes

— e2BlogNotesKeywords → export to csv → e2BlogNotesKeywords

Вроде прошло без ошибок. Переносим файлы по фтп.

Смотрю http://e2.yaruslan.ru/all/ было 47, стало 176. Ссылки вроде работают, странички открываются. Черновики перенеслись нормально.

При объединении, походу слетели Алиасы записей, так как не переносил таблицу e2BlogAliases, в которой всё это лежит (наверное). Но это для меня уже не существенно, ибо ссылки работают и так.

Слияние прошло успешно...

 Нет комментариев    49   8 мес   sql   БД   обновление   Сделай сам   эгея   Я автор