Създаване на страхотен канал за изображения с автоматично превъртане. Ваша собствена емисия с новини в PHP

RSS е семейство от XML формати, предназначени да описват новинарски емисии, съобщения за статии, промени в блогове и т.н. Информацията от различни източници, представена в RSS формат, може да бъде събрана, обработена и представена на потребителя в удобна за него форма чрез специални програми - агрегатори

Уикипедия

На много сайтове ще видите бутон или , което означава, че сайтът има наличен RSS канал. Тази услуга е удобна за читателите на сайтове, тъй като с помощта на Rss агрегатори, например Yandex.Lenta или Kanban.ru, можете да събирате своя собствена емисия с новини и да четете новини от различни сайтове на едно място или да ги получавате във вашия e- поща с помощта на услугата Rss2Email. Прочетете повече за RSS, например, в Computerra.

В тази статия Ще говоримне за използването на RSS емисии и агрегатори, а за това как бързо да създадете новинарска емисия на уебсайт с помощта на програмата RSS.PHP и MySql.

Начални условия

Така че имате уебсайт, който има PHP поддръжкаи базата работи MySql данни(между другото, много често срещана комбинация). От базата данни, в която се съхраняват вашите блог текстове или новинарски съобщения, ние ще получим данни за нашата емисия. Емисията ще се изгражда динамично, директно при поискване, така че всичко, от което се нуждаете, е съответният скрипт. Можете да го напишете сами, но можете да вземете готов

Малко теория

Първо, малко теория. За нашата емисия ще използваме формата RSS 2.0, а за тези, които се интересуват, ви насочвам към описанието на формата, което ще намерите. И няма да използваме всички елементи, а само тези, без които наистина не можем:

елемент Описание
заглавие Заглавие на канала.
връзка Линк към главната страница на сайта.
описание Описание на канала.
език Езикът, на който е написан каналът. Например ru - руски
Авторско право Авторско право
управляващ редактор електронна пощаредактор на канала.
уебмастър Имейл на уеб администратора.
дата на публикуване Дата на публикуване на информацията в канала.
lastBuildDate Час на последната смяна на канала.
категория Определя категорията, към която принадлежи каналът.
Вещ Действителното съдържание на канала. Трябва да има поне един елемент.

Вещ

елемент Описание
заглавие Заглавие
връзка Линк към пълния текст
описание анотация
категория Категория
дата на публикуване Дата на публикуване на статията. Някои агрегатори няма да покажат статия, ако определената дата все още не е пристигнала. Но не всички.

Тъй като RSS е подмножество на XML, трябва да получим нещо подобно: Ако промените нещо в скрипта, проверете го за съответствие със стандарта, като използвате услугите Feed Validator или RSS Validator
Стартиране на програмата

Програмата се състои от следните файлове: rss.php - файл за стартиране, rss.inc - включен файл с описание на класа, conn.inc - файл с описание на параметрите за връзка с базата данни.

За да стартирате програмата, променете данните за връзка с базата данни във файла conn.inc, променете параметрите на канала във файла rss.php и пишете във всеки удобен каталогна твоят уеб сървър, поне в корена. Не забравяйте да проверите структурата на данните MySql бази данни, за програма можете да използвате например това:

CREATE TABLE BLOG (ID int(11) NOT NULL по подразбиране "0", заглавие varchar(50) по подразбиране NULL, описание текст по подразбиране NULL, връзка varchar(200) по подразбиране NULL, дата дата по подразбиране NULL, категория varchar(100) NOT NULL по подразбиране "", ab varchar(10) NOT NULL по подразбиране "", PRIMARY KEY (ID)) TYPE=MyISAM;

след това ще имате лента с адреса

Какво следва?

Сега не забравяйте да поставите бутон на видимо място и да добавите кода между таговете на страниците на вашия сайт:
така че браузърите да разберат, че имате емисия. И, разбира се, регистрирайте емисията в търсачка, например http://blogs.yandex.ru/add.xml и в каталога http://blogs.yandex.ru/add-catalogue.xml

Можете да изтеглите безплатно програмата за създаване на RSS емисии, Rss.php (3 Kb)

Намерих го в Google за вас. От доста време търся плъгин, който да ми позволи бързо и лесно да създам толкова прост ефект, без гигантски количества код и хитри тънкости. И го намерих и много му се радвам. Всъщност пиша тази публикация и за себе си, като отметка, за да мога да погледна тук следващия път, когато трябва да направя галерия с изображения с автоматично превъртане.

Писане на html за емисията с изображения

Тук има една класика. Използваме ul списък и го увиваме в div. Ще зададем плъгин на този div, така че се нуждае от идентификатор. В моя случай това е клас.

Важно е изображенията да са с еднакъв размер. В противен случай няма да изглежда толкова впечатляващо. Затова ще трябва да ги прецедите и обработите.

Подготовка на JavaScript за въртележката на изображения

Трябва да свържете jQuery. Мисля, че всеки знае как да направи това. Трябва също да включите библиотеката jcarousel Lite. Тя прави всичко.

След като заредите страницата, трябва да настроите плъгина към нашия канал за изображения и ще се случи чудо!

$(функция() ($(".mycarousel").jCarouselLite(( автоматично: 2000, скорост: 1000, кръгово: вярно, видимо: 4 )); ));

Това е всичко! Наистина ли. Нищо повече не е необходимо. Няма нужда да се свързвате или конфигурирате теми. Няма нужда да правите никакви контроли или да пишете допълнителен код. Ти имаш стандартен кодсписък с изображения и едно извикване на приставката с параметри. Така трябва да бъде. Радвам се, честно казано.

ОТНОСНО възможни параметрии техните значения могат да бъдат прочетени в оригинал на страницата на плъгина. Е, ще ви кажа накратко защо.

Възможни опции за галерия

btnPrev - идентификатор, определящ бутона "Назад". Това е необходимо, ако извършвате управление на превъртане чрез бутони.

btnNext - идентификатор за бутона "Напред".

btnGo - можете да навигирате по номера на елементи. Когато щракнете върху елемент, въртележката трябва да се превърти до конкретен елемент. Прочетете повече в документацията.

mouseWheel - true/false стойност, която определя дали въртележката ще се превърта при превъртане на мишката. Изисква плъгин за колелце на мишката.

auto - true/false стойност, която определя дали лентата ще се върти сама.

скорост - скорост на превъртане в милисекунди.

облекчаване - ефект на превъртане. Можете да създадете ефект на подскачане. Изисква приставката за облекчаване.

вертикално - може би трябва снимките да се въртят вертикално?

кръгова - лентата ще спре ли като стигне до последната снимка или ще се върти в кръг?

visible - колко елемента са видими

start - с кой елемент да започнем

scroll - колко елемента да превъртите

преди да започнете - функция за обратно извикване, извикан преди началото на анимацията

afterEnd - callBack функция, извикана в края на анимацията

Емисията с новини вече е за дълго времее най по прост начинполучаване нова информацияот всеки уебсайт или блог. Обикновено бюлетинът от новинарски канал включва пълния или съкратен текст на публикацията, заглавие, аудио или видео материали, представени в стандартизиран формат.

1.Facio

Facio е jQuery плъгин, който показва последна новинаот посочената Фейсбук страница. Джаджата има и бутон за харесване. Просто интегрирайте плъгина във вашия уебсайт, посочете адреса на страницата и покажете съдържание от социалната мрежа на страниците на вашия уебсайт.

2. Feedify


Feedify – jQuery плъгин за конвертиране на текст в HTML канал за новини, като в Twitter и Facebook.

3. Социална емисия


Social Feed е jQuery плъгин, който показва новинарската емисия на конкретен потребител от неговите акаунти в няколко социални мрежи.

4.MiniTwitter


MiniTwitter е джаджа jQuery, която ви позволява да препредавате коментари от Twitter към вашия уебсайт или блог на WordPress.

5. Приставка jFlickrFeed


Приставката jFlickrFeed улеснява изтеглянето на съдържание от Flickr и показването му на вашия собствен сайт.

6. zTwitterFeed


Приставката zTwitterFeed чете туитове определени потребителив Twitter. След което записите се трансформират в структуриран HTML код с вградени CSS класове.

7. zFlickrFeed


Приставката zFlickrFeed може да извлича снимки от конкретни потребители на Flickr. След което получаваме структуриран HTML код с вградени CSS класове.

8. zLastFM


Приставката zLastFM извлича информация за любими песни, наскоро слушани песни, любими албуми, изпълнители и песни от профилите на Last.FM (изисква се API ключ). След което плъгинът произвежда структуриран HTML код с вградени CSS класове.

9. zWeatherFeed


Приставката zWeatherFeed предава информация за текущите метеорологични условия от Yahoo! Метеорологично време. Можете да посочите едно или повече географски местоположения, използвайте фонови изображения, отразяващи метеорологичните условия, както и дневен и нощен дизайн. Можете също така да показвате информация за града и текущата температура.

10. FeedEk


FeedEk е jQuery плъгин за анализиране и показване на RSS и Atom емисии. FeedEk използва API на Google Feed за извличане на данни. Можете лесно да получите емисията с новини на всеки домейн, без да се налага да използвате скриптове от страна на сървъра.

11. Ballboy.js


ballboy.js – jQuery плъгин, който извлича работи по поръчкаот услугата Dribbble и ги показва на сайта.

12. Юнеро


Yunero е нов jQuery плъгин за показване на емисия с новини от Youtube канал. Можете също така да посочите връзка към плейлисти, от които искате да показвате видеоклипове. Освен това, заедно с джаджата, можете да покажете форма за абонамент за канал, което ще увеличи броя на редовните потребители.

13. Социалистическа


Социалист – плъгин за показване на новини от социални мрежи, който обединява всички канали на едно място. Можете да покажете една емисия с новини от Facebook, Twitter, LinkedIn, YouTube, Pinterest, Flickr, Tumblr, Craiglist RSS и други социални мрежи.

14. jQuery Google Feed


Google Feed е плъгин, който позволява на разработчиците да смесват различни емисии с новини клиентска страна. За да направите това, просто трябва да интегрирате новия API скрипт от Google.

15. Изискани новини


Fancy News е jQuery плъгин, който ви позволява да създавате атрактивни емисии с новини. Той е много лесен за използване и предлага много настройки външен вид. Можете да добавяте неограничен брой новини с миниатюри. Ако публикацията е по-голяма от площта за показване, автоматично се добавя превъртане. Възможно е също да качите своя собствена RSS емисия.

Какво е общото между всички информационни сайтове? Това, което задължително присъства на начална страница? Ако сте мислили за новините, сте били прави! Днес ще разберем как точно да направите своя собствена емисия с новини с админ панел и защита в PHP. Предварително ще кажа, че това не е никак трудна задача, но няма да отнеме и две минути, така че се запасете с всичко необходимо (бира, кола, сок, чипс...) и тръгвайте! Първо, нека помислим за структурата на новинарската емисия. Разбира се, ще използваме mysql, но какво бихме правили без него! Данните ще се съхраняват в база данни mysql, която ще наричаме mynews. Който? Сега ще обясня. Нека поставим таблица, наречена новини, в базата данни на mynews. А в таблицата - ето какво:

News_id - дължина MediumInt 9 AutoIncrement, това ще бъде първичният ключ.
Ntext - текст на новина, тип Text.
Ntitle - заглавие на новината, тип varchar, дължина 255
Ndate е дата, varchar, дължина 255
Nuser - а това е името на автора на новината, varchar, дължина 255.

Как да създадем всичко това? Прочетете предишните текстове на този сайт, всичко е там необходимата информация. И от себе си мога да препоръчам отличен, много удобна програма Mysql-Front, в който всички таблици се създават визуално. Но да продължим. Сега нека да разберем какви скриптове трябва да бъдат написани. Предлагам да напишете следното: admin.php, createnews.php (този скрипт ще създаде новините), tnews.php (ще покаже новините). Можете да напишете скрипт за изтриване на новини, но можете да направите това сами, след като завършите упражнението. И така, да започваме. Първо, нека напишем скрипта createnews.php. Засега няма да е много ясно, но всичко ще си дойде на мястото, след като разгледате листинга на admin.php.

Списък 1. Createnews.php

"". addslashes($ntitle)."" // Този ред е необходим, за да се гарантира, че кавичките се показват правилно в заглавието.

Както можете да видите, varchar се използва вместо mysql дата, по-лесно е. Сега, за да може всичко в разглеждания скрипт да си дойде на мястото, трябва да напишете админ панел. Да пишем.

Списък 2. Admin.php

Добавяне на новини Добавяне на новини Заглавие на новината:
Твоето име:
Текст

Очевидно е просто html форма. Така че защо да създавате PHP скрипт? Защото изобщо не мислехме за безопасността. Сигурността на административния панел може да се гарантира чрез отказ на достъп на случайни потребители, а не тези, които знаят входаи парола. Нападателят ще може да разбере паролата само тогава (и не по-рано), когато получи достъп до скрипта, т.е. към директорията. Променете admin.php както следва:

Листинг 3. Модифициран admin.php

Добавяне на новини Добавяне на новини Заглавие на новината:
Твоето име:
Текст

Нека да разгледаме писмения сценарий. В самото начало текущите потребителско име и парола се присвояват на две променливи, след което се проверяват въведените. Ако въведените данни съдържат " (празно) или не са равни на това, което се съхранява в променливите, се показва тъжното съобщение " за [aker] Невалидно имепотребител или парола." В противен случай се показва „Упълномощаването беше успешно" и изчезва html код. Формата за въвеждане е описана в самия край.

Това е с админ панела. Сега нека преминем към скрипта, който ще покаже емисията с новини.

Листинг 4. tnews.php:

На какво трябва да обърнете внимание тук? Първо, при поискване

$request = "ИЗБЕРЕТЕ ntext, ntitle, ndate, nuser ОТ новини ORDER BY ndate DESC LIMIT 15";

Той казва следното: показване на новини, сортирани по дата, и показване само на първите 15 новини на страницата. mysql функция _fetch_array($result) връща масив, който е записан в променливата $row. За тези, които не знаят какво е & nbsp, казвам: това е свободно пространство. Всичко, което остава да направите, е да вмъкнете новини в някаква готова страница, например така:

Включи("./tnews.php")

Това е всичко, което исках да ти кажа. Ако имате въпроси, не се колебайте да ги зададете на нашия уебсайт.