Админка сайта


Админка (или панель администратора) обычно именуют CMS. Система управления контентом (от англ. Content Management System) позволяет управлять сайтом, регулярно его обновлять, редактировать и создавать новые страницы, статьи, товары, изображения. Её еще называют «движком» сайта, от функционала зависит скорость наполнения контентом, возможности быстрого корректирования.

Это своего рода потайная дверь, ведущая в закулисье. Администратор видит сайт совсем не так, как его пользователи. Страницы идут списками, интерфейс простой, есть поля для правки текста.

Админка обязательна или нет

Существуют и сайты без возможности редактирования. Стоимость их до 50% ниже, но если захочется внести изменения, пользователь без знаний HTML вынужден будет обратится в веб-студию.

Кто имеет доступ

CMS — это отдельная часть сайта, кроме администратора, имеющего доступ, никто из пользователей Интернета её не видит. Для входа нужно знать данные, их предоставляет разработчик:

  • Адрес админки в Интернете.
  • Логин и пароль.

Какие бывают админки

А именно:

  • MS Joomla (Джумла) — пользоваться можно на бесплатной основе, многие отдают предпочтение ей за возможность модификации в широком диапазоне.
  • CMS WordPress (Вордпресс) — с его помощью можно создать даже сложный проект. Открытый исходный код, возможность интегрировать плагины, «прозрачность» работы склоняют многих к его выбору.
  • CMS Bitrix (Битрикс) — российская разработка, пользование на платной основе. Широкие функциональные возможности, управление сайтом при помощи информационных блоков.

Эти разновидности выбирают за основу сайтов чаще остальных. Админок существует намного больше:

  • готовые CMS — использовать её можно в первоначальном виде или переделать под свои потребности;
  • разработка по индивидуальному заказу — дорогостоящая, не всегда оправдана.

Зачастую останавливаются на выборе готового варианта, с доработкой нужных функций.

Из чего состоит режим редактирования

Админки могут быть разными по интерфейсу и возможностям, но общие черты у них все-таки есть, это кнопки:

  • параметры;
  • метки;
  • доступ;
  • текст;
  • переименовать;
  • создать;
  • загрузить;
  • копировать;
  • удалить.

Каждая из систем предполагает использование следующих возможностей:

  • корректирование и отслеживание пользователей;
  • удаление существующих страниц, можно добавлять новые;
  • добавление нового контента, его редактирование;
  • модерация сообщений;
  • для интернет-магазина: контроль за товарами через систему, учет покупок, архив заказов, сообщений от покупателей;
  • аналитика действий пользователей, посетивших сайт.

Какие возможности дает админка собственнику сайта

А именно:

  • Возможности развития ресурса, частое обновление информации, добавление актуальных данных. Для интернет-магазинов она незаменима.
  • Не нужно тратить время на постоянное обращение к разработчикам с просьбой подкорректировать данные.
  • Расширение сайта, добавление новых страниц, наполнение его свежим, уникальным контентом. Без админки не обойтись, когда нужно добиться повышения сайта в поисковой выдаче, разработать стратегию продвижения при помощи уникального контента. Личное участие владельца сайта в наполнении ресурса позволит ему быстрее достичь своих целей.

Ценовая политика, окупаемость

Не всегда сайт с админкой это дорого. Система управления сайтом — это то, на чем экономить не нужно, если с ресурсом хотят работать. Бесплатные «движки» или платформы с небольшой абонплатой вполне могут удовлетворить пожелания заказчика по своему функционалу.

cropas.by

В предыдущих уроках мы научились устанавливать CMS Joomla на локальном компьютере и на хостинге.


йчас же поговорим о том, что собой представляет данная система управления контентом и как с ней работать. На начальном этапе все действия, которые мы будем производить для создания собственного сайта, будут тесно связаны с административной частью сайта или другими словами админкой. Чтобы в нее попасть в адресной строке интернет браузера набираем имя Вашего сайта, ставим символ «/» и пишем «administrator», на примере данного сайта адресная строка будет иметь вид – «Joom4all.ru/administrator». Жмем «Enter». Теперь необходимо пройти авторизацию для входа в админ-панель, для этого вводим данные, которые мы указывали на этапе установки Joomla, готово, мы зашли в админку! Выглядит она следующим образом.

Главная страница панели администратора CMS Joomla 3 (скриншот несколько устарел)

На главной странице панели управления мы видим следующее – левое и верхнее меню, а так же основную центральную часть страницы. При помощи левого меню можно попасть на страницы настроек, обслуживания и прочих манипуляций с сайтом, верхнее меню в принципе содержит тот же самый набор инструментов, а в центральной области страницы отображаются данные о пользователях на сайте, новых и популярных статьях которые имеются или в скором времени появятся на сайте.

Знакомство с Joomla 3 начнем с верхнего меню, именно с его помощью мы в дальнейшем будем осуществлять навигацию по разделам панели управления сайтом. Оно разбито на основные разделы и выглядит следующим образом:


Разделы панели управления Joomla 3

И первый пункт меню, который мы видим это «Система» с его помощью можно попасть на страницу общих настроек CMS, управления кэшем и получить информацию о системе. В общем, все видно на скриншоте.

Раздел в панели управления "Система" - из чего состоит, для чего нужна

Сразу хочу сказать, что в рамках данной статьи не будут рассмотрены все пункты, сейчас для нас важно просто ознакомиться с основами разделами панели управления, более детально я распишу все позднее, в порядке очередности.

Следующий пункт меню «Пользователи» с его помощью осуществляются все действия связанные с пользователями сайта. Пользователей можно добавлять, удалять, группировать по каким либо критериям, управлять правами доступа к тем или иным разделам сайта и многое другое.

Раздел "Пользователи" - с его помощью производятся манипуляции с пользователями сайта


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

Раздел "Меню" админки Joomla 3 позволяет производить необходимые действия с меню на сайте

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

Один из главных разделов панели управления Joomla 3 - "Материалы"

Меню «Компоненты» служит для доступа ко всем установленным в Joomla 3 компонентам, их может быть достаточно много. В базовой сборке Joomla уже присутствуют такие компоненты как баннеры, контакты, метки, ленты новостей, поиск, перенаправление и некоторые другие. После установки новых компонентов они так же будут отображены в данном разделе.


Раздел "Компоненты" служит для доступа к компонентам CMS Joomla 3

Раздел «Расширения» доступ, к которому осуществляется при помощи одноименного меню, позволяет производить манипуляции со всеми расширениями Joomla 3, будь то модули, плагины, шаблоны или компоненты. Что такое расширения, где их взять и как установить читайте в данном уроке.

Раздел "расширения" позволяет управлять расширениями Joomla 3

Ну и последний раздел, который присутствует в админ-панели сайтов Joomla 3 это раздел «Справка». С его помощью можно получить справку по данной CMS, а так же перейти на официальный сайт разработчиков, пообщаться на форуме поддержки, найти новые расширения и локализации Joomla 3.

Советую для лучшего понимания всего вышесказанного перейти в каждый раздел и посмотреть что там да как. Если что-то не понятно ничего страшного, в дальнейшем по мере ознакомления все станет понятно. А сейчас главное иметь общие понятия, что и где находится в «админке» Joomla 3. На этом данный урок подошел к концу.


P.S. Как раз во время написания данной статьи, как назло вышла новая версия Joomla 3.7, которую многие так давно ждали. Кардинальных изменений в плане навигации по админ-панели по сравнению с версией 3.6.5 в ней не наблюдается, но есть несколько достаточно серьезных функций. Их мы обязательно затронем в следующих уроках.

joom4all.ru

Экономический эффект использования админок сайта

Бизнес – это всегда ответственное занятие, требующее высокой самоотдачи и временных затрат. В большинстве случаев владельцу своего дела некогда вникать в особенности функционирования и эксплуатации сайта. Во главу угла в данном случае ставится экономический эффект. И заказ сайта с системой управления – это самое верное решение. Владелец бизнеса ожидает от своей рекламной площадки в Интернете, в первую очередь, экономической отдачи. Сайт с системой управления настолько прост в администрировании, что не требует наличия в штате фирмы отдельного специалиста – а это уже позволяет сэкономить!

Сайт с системой управления заряжен на достижение единственной задачи – обеспечить максимально простое и удобное администрирование при сохранении всех прочих полезных функций. При индивидуальном заказе система управления электронным ресурсом может быть адаптирована под конкретные требования клиента. Сегодня заказать сайт с системой управления – значит вооружить бизнес мощным маркетинговым инструментом.


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

Редактирование сайта через CMS

Предлагаемый электронный ресурс может редактироваться через обыкновенный веб-браузер независимо от места нахождения работника. Так, находящийся в командировке сотрудник имеет возможность своевременно внести новую полезную для развития бизнеса информацию прямо из гостиницы, а то и из кабинета деловых переговоров. Такая мобильность характерна только для сайтов с системой управления.
Заказ сайта с системой управления предполагает удобное построение внутренних ресурсов, что обеспечивает возможность одновременного удаленного редактирования контента сразу несколькими работниками. Интуитивно понятный интерфейс с удобной навигацией обеспечивает возможность работы с таким электронным ресурсом сотрудникам, не обладающим специальными познаниями. Таким образом, сайт с системой управления избавляет от излишних затрат на услуги веб-мастеров, верстальщиков HTML-страниц, программистов. Заказать сайт с системой управления – значит получить полную независимость от веб-специалистов!


Умный сайт с системой управления успешно справляется с автоматическим ссылочным ранжированием, оптимизацией текстового и графического контента под запросы поисковых систем, обеспечивая уверенное продвижение в рейтинговой иерархии и привлекая новых клиентов.

Максимальная защита информации, многоуровневое кэширование и архивация данных, эргономичный дизайн и мобильность позволяют сайту с системой управления гордо красоваться на вершине «пищевой цепочки» электронных ресурсов!

Хотите безотказного работника в штат фирмы, которые трудится сутками и не задает вопросов? Вам просто надо заказать сайт с системой управления!

www.templatemonster.com

Такой вот простенький пост, для новичков. Ибо оказалось, что надо.

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

СКОЛЬКО СТОИТ СДЕЛАТЬ САЙТ?

Да сколько угодно, вопрос некорректен. Сайт может стоить сам по себе 0 рублей. Например, этот вот блог сам по себе мне ничего не стоил, я всё взял готовое – в сети куча шаблонов и бесплатных систем управления. А может стоить миллион рублей и выше – если будете заказывать уникальнейшие скрипты и сложные дизайны.


Однако, если вы задумываетесь, сколько стоит сайт именно так, а не “сколько стоит портал?” или “сколько стоит новый почтовый сервис?”… если вы думаете про сайт вообще, то именно ваш стоит 10-30 тысяч. За около 10 вы получите 3 страницы, за 20-30 тысяч – 15-20 страниц.

МОГУ Я ПРОСТО ОТДАТЬ КОМУ-ТО ДЕНЬГИ И ПОЛУЧИТЬ САЙТ “ПОД КЛЮЧ”?

Можете. Потом в 99% случаев будете рано или поздно локти кусать. Платя “за сайт вообще”, вы платите за множество факторов, и вы должны четко понимать, за что. Если не понимаете за что – вы пожалеете о том, что не вникли заранее.

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

Меня в данном случае не волнует, как вам нарисовали логотип, куда поставили телефон и открывается ли у вас страница из меню вообще. Хочется, чтобы каждый заказывающий сайт понимал, какие данные он обязан получить от разработчика.

Если вы кому-то отдали сколько-то денег и получили в обмен то, что вам называют сайтом, у вас должны быть в этот самый момент пароли доступа:

1. доступ к управлению доменом
2. доступ к управлению хостингом
3. доступ к управлению сайтом

Стандартная же ситуация такова – клиент сам или с разработчиком выбирает звучное доменное имя, и получает сайт на этом имени и доступ в админку – систему управления информацией на сайте. Ему показывают, как править существующие страницы, максимум – как создавать новые, и адьё… А через месяц, три или максимум год клиенты начинают рвать и метать, ибо сайт исчезает…

Итак,

ЧТО ТАКОЕ ДОМЕН?

Домен – это адрес вашего сайта в сети Интернет. Это то, что останется, если убрать http://www. (эйч-ти-ти-пи-двоеточие-слеш-слеш-три-даблъю). Да, смешно звучащие из уст радиодикторов в метро вэ-вэ-вэ в доменное имя вообще-то не входят, а вот потом идет оно – имя вашего сайта. Например, follow-up.ru или microsoft.com Это – домен.

Важно: доменное имя оплачивается постоянно, вы его не покупаете, а арендуете. Шаг отсчета – 1 год. Если вы заплатили “под ключ”, вам купят домен на год (тьфу – не купят, а арендуют… подмена понятий идет постоянно, и я привык так говорить). И если вы не получите доступы к управлению им, то через год ваш сайт пропадет из Интернета.

Доменное имя в зоне .ru стоит стандартно около 600 руб в год. Знающие, впрочем, платят около 110 руб в год. Вы будете платить около 600. Копейки, в общем-то. Вам не жаль, несомненно. Жаль будет, когда вы будете искать, кому же заплатить эти гребаные 600 рублей, чтобы сайт заработал, а человечка, который вам делал сайт, уже и не найдешь…

Так что не забудьте потребовать от того, кто вам зарегистрировал домен, доступы к управлению им. Не стесняйтесь. Просто потребуйте! Стандартный набор доступов это всегда:

1. адрес
2. логин
3. пароль

В случае с доменом это будет

1. адрес регистратора домена (например, www.nic.ru)
2. логин доступа к панели регистратора (например, 1376542)
3. пароль доступа (например, jhvd784jhFD)

Почитайте внизу страницы подсказку, как изначально не попасть.

______________________________________________________________

Вы можете купить домен, но это еще не сайт, еще нужно сделать сайт и где-то разместить, чтобы его все видели.

Ну, за “сделать” вы отвалите 10-30 тысяч, это не обсуждаем, а что значит – разместить? Это значит – прежде всего оплатить хостинг. И платить за него всё время!

ЧТО ТАКОЕ ХОСТИНГ?

Хостинг – это какое-то фиг поймешь где расположенное место в мире (вообще-то физически особый компьютер – сервер), на котором будет лежать ваш сайт и показывать себя во всей красе каждому, кто наберет в браузере ваше доменное имя.

Без хостинга сайта нет. Вы вынуждены оплачивать хостинг. Нет, ваш компьютер не подойдет. Хостинг тоже не покупается, а арендуется. Стандартный шаг – месяц. Тем, кто покупает на год вперед, стандартно дают скидку.

Если кто-то без вашего живого вмешательства в процесс оплатит для вас хостинг, то он оплатит почти наверняка самый дешевый из возможных и почти наверняка на минимальный возможный срок.

Ищите сами, спрашивайте, какой хостинг нужен именно вам, потому что универсальных советов нет. Не ведитесь на дешевизну. Не уверены в качестве – не платите за год вперед.

Пока что вполне действенный советы – брать минимальный хостинг, позволяющий работать на php (чтобы скрипты у вас выполнялись, чтобы хотя бы саму админку поставить), вполне типичная цена – 100-150 рублей в месяц. (На ник.ру, например, около 330 руб в месяц. Это хороший хостинг, да. Имейте в виду, что вы можете держать на нем до 8 сайтов. Дороже 330 руб в месяц платить за сайт-визитку – бред.)

Если же хостинг регистрировал и оплачивал вместо вас разработчик – требуйте доступ к управлению хостингом! Ну, вы уже помните, да? Доступ – это всегда три строки данных:

1. адрес хостера (например, www.sweb.ru)
2. логин доступа (например, yoursiteru)
3. пароль доступа (например, 875kgu866Hn)

Если не будете иметь доступ к панели хостинга, с вами может получиться, как с моим братом – ему назвали завышенную цену хостинга, он заплатил за год, а говноразработчик оплатил три месяца. Так вот некоторые еще зарабатывают… Через три месяца сайт исчез, ибо – аренда, аренда это, а не покупка хостинга, исторически слова путают…

______________________________________________________________

Когда ваш сайт будет иметь имя-домен и дом-хостинг, вы захотите же иногда на нем что-то и изменить – например, вписать на главной странице свое имя:) Так что подходим к тому, что как раз обычно не вызывает проблем –

ЧТО ТАКОЕ АДМИНКА САЙТА?

Админка или панель администратора – потайная дверь на сайт, черный ход, показывающий вам его с другой стороны. Не так, как видят его люди, обычно – упрощеннее, например, в админке все страницы обычно выводятся одним или несколькими длиннющими списками. Короче, место, где можно править тексты, создавать страницы, размещать картинки и прочие медиа.

Не сомневаюсь, что разработчик предоставит вам сам доступ в админку:

1. адрес админки (обычно http://www.ваш-сайт.ru/адрес-админки)
2. логин (например, admin)
3. пароль (например, 123456)

Update от 11.11.12 Тем, кто чуть продвинутее и считает, что он все это знает – полазайте по настройкам доступов и посмотрите, кому уходит информация о смене паролей… Возможны сюрпризы.

______________________________________________________________

ПОДСКАЗКА ДЛЯ ИДИОТОВ/ЗАСРАНЦЕВ-РАЗРАБОТЧИКОВ И ИХ ЖЕРТВ

Не всегда разработчик специально обманывает клиента, скрывая от него информацию о домене и хостинге. Гораздо чаще люди тупят. Так, для регистрации домена стандартно требуется указать электронную почту, на нее приходит код подтверждения регистрации… Ну, конечно, тот, кто регистрирует домен, указывает свою почту. А потом начинается ломка голов – как же перевести домен на хозяина, потому что почта иногда является еще и логином доступа к панели регистратора, а свою почту клиенту отдавать, конечно, не хочется…

Подсказка от злого меня, ибо задрали тормозить: регистрируем изначально новый электронный адрес, специально под клиента… Всё? Намек понят? Если же вы весь в белом, а вот клиент будет тормозить, то у вас остаются ведь пароли к этой почте – ну, например, чтобы все же через год именно вы продлили домен.

Вернуться к ссылке на эту подсказку.

Что такое домен/хостинг/админка?, 9.3 out of 10 based on 9 ratings

follow-up.ru

В прошлой статье мы с Вами разбирали создание собственного движка для сайта. Однако, очень часто приходится управлять сайтом: добавлять новые материалы, управлять пользователями, голосованиями. Безусловно, это можно делать через PHPMyAdmin, но это весьма неудобно, поэтому хорошим решением будет — создать Admin-панель для сайта. И как это сделать, Вы узнаете в этой статье.

Итак, давайте вновь распишу порядок действий, которые необходимо выполнить:

  1. Сверстайте все страницы сайта. В принципе, Вы вообще можете обойтись без дизайна, но элементарная структура должна быть. То есть табличные данные должны быть в таблице, а не сплошным текстом.
  2. Примите решение о том, какие данные Вы хотите видеть в Admin-панели. Например, наверняка Вам потребуется видеть пользователей Вашего сайта, Ваши статьи, может быть, какие-нибудь опросы.
  3. Создайте класс для управления Admin-панелью. Здесь должны быть созданы методы, которые позволяют делать выборку из самых разных таблиц, а также добавлять и редактировать записи в них. И сделать подобные методы нужно для всех таблиц, с которыми Вы хотите работать в Admin-панели (Вы уже должны были выбрать это в предыдущем пункте). Например, самый простой пример с пользователями. Минимальный набор требуемых методов: выборка всех пользователей, добавление нового пользователя, изменение пользователя. Безусловно, все эти задачи должны быть Вами уже реализованы при создании движка для сайта, поэтому здесь Вам надо будет только обратиться к старым классам и, возможно, как-то изменить данные конкретно для Admin-панели.
  4. Разбейте Ваш шаблон сайта на отдельные части и скопируйте их в отдельные файлы с расширением tpl. Также поставьте элементы шаблона, например, так: «Пользователь {username} зарегистрировался {regdate}«. Это всего лишь пример, а данные, вообще говоря, удобнее выводить в таблицах.
  5. Создайте класс, который будет заниматься подстановкой вместо элементов шаблона соответствующие данные.
  6. Собирайте по кирпичикам все страницы Admin-панели Вашего сайта с помощью созданного в предыдущем пункте класса.
  7. При желании можете сделать дизайн, хотя, безусловно, это исключительно для Вас и других администраторов.

Как видите, последние 4 пункта идентичны тем, которые Вы выполняли при создании движка. Здесь объём работы будет значительно меньше, поэтому, думаю, Вы с этим без проблем справитесь.

Я где-то три месяца сидел на своём сайте без Admin-панели, добавляя новые материалы напрямую через базу данных. Скажу честно, тратил много лишнего времени, а когда создал Admin-панель на своём сайте, то процесс управления сайтом значительно упростился. Так что рекомендую Вам сделать то же самое.

Пример создания Admin-панели Вы найдёте в этом обучающем курсе: http://srs.myrusakov.ru/im

myrusakov.ru

Админка сайтаЗдравствуйте, уважаемое Хабрасообщество!

Я занимаюсь разработкой веб-сайтов. Как правило, это решения под индивидуальные потребности заказчиков. Поэтому я не использую готовые CMS, а предпочитаю складывать кирпичики самостоятельно. Конечно и админскую часть приходиться писать самостоятельно, поскольку она должна выполнять те функции, которые нужны заказчику, но и ничего лишнего не должно быть. И если написать несколько методов для редактирования данных это пол беды, то приходилось ещё и верстать приятный и удобный интерфейс.

Долгое время я использовал Twitter Bootstrap, но он не мог удовлетворить все потребности. Приходилось верстать дополнительные кнопочки и писать скрипты. Но вот однажды, я познакомился с замечательным UI-фреймворком KendoUI от Telerik. Что из этого получилось под катом.

О самом фреймворке уже писалась статья на Хабре. Мы будем использовать библиотеку Web-контролов KendoUI Web. Чтобы понимать, что можно создавать с её помощью можно посетить страничку с демо. Для построения контролов можно использовать как хелперы для ASP.NET, JSP или PHP, так и javascript-виджеты. Последние распространяются по лицензии GPL v3 License, поэтому я использовал именно их. Скачать тот или иной пакет можно здесь. На серверной стороне я использую ASP.NET MVC 4 с пакетом Microsoft ASP.NET Web API OData 4.0.0, уставить который можно с помощью команды PM> Install-Package Microsoft.AspNet.WebApi.OData

Для демонстрации создадим простой класс Article, и добавим ему три свойства разного типа

 public class Article 	{ 		public int ID { get; set; } 		public string Title { get; set; } 		public bool Hidden { get; set; } 	} 

Далее создадим ApiController для работы с данными. В своем примере я использую Entity Framework, поэтому сразу указываю Scaffolding options

Админка сайта

После этого я изменяю только действие GetArticles, так показано в примере ниже. Прежде всего теперь оно возвращает ODataResult. А в качестве параметра принимает ODataQueryOptions, это коллекция сериализованных параметров строки запроса. В самом действии мы получаем коллекцию и общее количество элементов в ней. А после применяем к ней входящие параметры. В результате мы возвращаем коллекцию после применение к ней параметров и общее количество, оно необходимо для пагинации.

 public class ArticlesController : ApiController  {  private Storage db = new Storage();   // GET api/Articles 		public ODataResult<Article> GetArticles(ODataQueryOptions options) 		{ 			var items = db.Articles; 			var count = items.Count();  var res = (IEnumerable<Article>)options.ApplyTo(items);  			return new ODataResult<Article>(res, null, count); 		}   // GET api/Articles/5  public Article GetArticle(int id)  {  Article article = db.Articles.Find(id);  if (article == null)  {  throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound));  }   return article;  }   // PUT api/Articles/5  public HttpResponseMessage PutArticle(int id, Article article)  {  if (ModelState.IsValid && id == article.ID)  {  db.Entry(article).State = EntityState.Modified;   try  {  db.SaveChanges();  }  catch (DbUpdateConcurrencyException)  {  return Request.CreateResponse(HttpStatusCode.NotFound);  }   return Request.CreateResponse(HttpStatusCode.OK);  }  else  {  return Request.CreateResponse(HttpStatusCode.BadRequest);  }  }   // POST api/Articles  public HttpResponseMessage PostArticle(Article article)  {  if (ModelState.IsValid)  {  db.Articles.Add(article);  db.SaveChanges();   HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.Created, article);  response.Headers.Location = new Uri(Url.Link("DefaultApi", new { id = article.ID }));  return response;  }  else  {  return Request.CreateResponse(HttpStatusCode.BadRequest);  }  }   // DELETE api/Articles/5  public HttpResponseMessage DeleteArticle(int id)  {  Article article = db.Articles.Find(id);  if (article == null)  {  return Request.CreateResponse(HttpStatusCode.NotFound);  }   db.Articles.Remove(article);   try  {  db.SaveChanges();  }  catch (DbUpdateConcurrencyException)  {  return Request.CreateResponse(HttpStatusCode.NotFound);  }   return Request.CreateResponse(HttpStatusCode.OK, article);  }  } 

Вот и все. Самое время переходить к клиентской части. Для начала подключим KendoUI и JQuery на страницу.

 <link href="~/Content/kendo/kendo.common.min.css" rel="stylesheet" /> 	<link href="~/Content/kendo/kendo.default.min.css" rel="stylesheet" /> 	<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script> 	<script src="~/Scripts/kendo/kendo.web.min.js"></script> 

После этого установим и настроим виджет. Подробнее о настройках виджета можно прочитать здесь.

<div id="grid"></div> 	<script> 		$(document).ready(function () { 			$("#grid").kendoGrid({ 				dataSource: { 					pageSize: 3, 					serverSorting: true, 					serverFiltering: true, 					serverPaging: true, 					type: 'odata', 					transport: { 						read: { 							url: "/api/articles", 							dataType: "json", 							type: "GET" 						}, 						create: { 							url: "/api/articles", 							dataType: "json", 							type: "POST" 						}, 						update: { 							url: function (article) { 								return "/api/articles/" + article.ID 							}, 							dataType: "json", 							type: "PUT" 						}, 						destroy: { 							url: function (article) { 								return "/api/articles/" + article.ID 							}, 							dataType: "json", 							type: "DELETE" 						} 					}, 					schema: { 						data: function (data) { 							return data.Items; 						}, 						total: function (data) { 							return data.Count; 						}, 						model: { 							id: "ID", 							fields: { 								ID: { editable: false }, 								Title: { type: "string", editable: true, nullable: false, validation: { required: true } }, 								Hidden: { type: "boolean", editable: true } 							} 						} 					} 				}, 				height: 250, 				filterable: true, 				sortable: true, 				pageable: true, 				toolbar: ["create"], 				editable: "popup", 				columns: [ 					{ field: "ID", filterable: false, width: 50 }, 					{ field: "Title", title: "Название", width: 300 }, 					{ field: "Hidden", title: "Скрыт", width: 100 }, 					{ command: ["edit", "destroy"], title: " ", width: "210px" } 				] 			}); 		}); 	</script> 

Готово! Теперь можно запускать и проверять. Менее чем за 10 минут мы создали полноценный интерфейс для управления данными, с возможностью пагинации, сортировки и фильтрации. Удобный и приятный. Спасибо KendoUI и формату OData, а Вам за внимание.

Админка сайта
Админка сайта
Админка сайта
Админка сайта

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

habr.com

Различия сайтов с CMS и без нее

Главное отличие веб-ресурсов на CMS состоит в том, что работа с базами данных, текстовыми, графическими и прочими файлами происходит посредством управления при помощи понятной системы.

Сайт без админки также может работать с базой данных и всеми вышеперечисленными компонентами. Но, к примеру, для того чтобы в CMS на страницу установить картинку, нужно сделать всего лишь одно действие: нажать на соответствующую иконку во встроенном редакторе, а дальше следовать указаниям. Риск ошибки исключен на 99,9%.

А вот для установки изображения на страницу в коде (без админ-панели) придется сделать массу шагов:

  1. Загрузить картинку на сервер.
  2. Найти соответствующий раздел в базе данных или в html-коде на странице, куда вы собираетесь разместить картинку.
  3. При помощи тэга Админка сайта прописать код отображения картинки, при этом нигде не ошибиться.
  4. Открыть страницу и проверить, как отображается картинка.
  5. Вернуться в кодовую часть и исправить ошибки по мере необходимости.

Как видите, пользование админ-панелью значительно облегчает жизнь как контент-менеджеров, так и разработчиков веб-проектов.

Как зайти в админку сайта

В настоящее время существует множество систем управления сайтом:

WordPress, Joomla, Modx, Drupal, DLE — универсальные; ShopScript, PrestaShop, Opencart — для интернет-магазинов; PHPbb, IPB — для форумов и многие другие. Доступ к админке каждой из систем осуществляется посредством введения определенного адреса (для каждой CMS он свой) в адресной строке браузера типа: Ваш сайт/путь к админке.

Рассмотрим, что такое админка сайта на примере CMS MODx

Для входа в админку вводим адрес: сайт/manager и попадаем на форму-приглашение введения логина и пароля:

Админка сайта

Теперь мы видим искомое — панель управления сайтом или же админку.
Рассмотрим, что же можно делать в этой административной панели:

  • Здесь мы можем работать с деревом сайта (пункты меню): обновлять, удалять, добавлять, скрывать и т.п.

Админка сайта

Для изменения содержимого любой страницы необходимо редактировать соответствующий раздел дерева категорий:

Админка сайта

  • Можно изменять мета-теги, работать с публикацией документа, а также изменять контент страницы. Для работы с контентом предусмотрен текстовый редактор, с функциями, похожими на работу с привычным Word.

Админка сайта

  • Кроме того, помимо обычных текстовых страниц существует возможность подключать дополнительные готовые модули типа фотогалереи, доски объявлений, формы обратной связи, гостевых книг, блогов, новостных лент и т.п. В MODx это реализовано в разделе “Приложения”, а раздел “Медиа” предназначен для работы с медийным контентом. Работа с правами (разрешение на работу для других пользователей — не администратора, изменение паролей и т.п.) реализована в разделе “Управление”.

Админка сайта

  • Для опытных программистов есть возможность подключения своих собственных модулей в разделе “Элементы”. К примеру, для сайта по продаже недвижимости можно настроить отображение адресных точек квартир на карте, расширенный поиск объектов, всевозможные сортировки документов и т.п.
  • Вкладка “Файлы” открывает структуру каталогов и файлов на веб-сервере для их правки и загрузки.

Каждая админ-панель уникальна. Если вы всю жизнь работали с WordPress, то не сможете сиюминутно переключиться на ShopScript или MODx. Что-то в админ-панелях есть общее, а что-то коренным образом различается. В любом случае, каждую админку придется изучать. Но если вы имеете навыки работы хотя бы с одной из них — то данный процесс будет проходить проще.

Среди админ-панелей также существует своя градация сложности. К примеру, “легкими” админками считаются Joomla, DLE, WordPress. Средняя сложность — у MODx. Повышенная сложность — 1C Битрикс, Drupal.

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

semantica.in

ВНИМАНИЕ ПЕРВАЯ ЧАСТЬ СООБЩЕНИЯ ЭТО ТОЛЬКО САМА АДМИН ПАНЕЛЬ БЕЗ РЕДАКТОРА!!!

Часть 1 СОЗДАЁМ АДМИНКУ — точнее её конструкцию

если у вас есть сайт(именно свой, который вы делали не посильным трудом) то вам навернуе нужна админка для управлениями конфигурациями !

Так вот же она: ))

Приступим

Первое, что нам надо сделать — это создать отдельную подпапку. Назовём её дефолтно — «admin». Наша админ-панель в будущем будет располагаться по адресу http://ваш_сайт.ru/папка_где_лежит_скрипт/admin/. Вообще, называть папку именно «admin» вовсе не обязательно, можно назвать её как угодно.

Второе, что нам надо сделать — это создать файл конфигурации админки. Для этого создаём в папке с дефолтным названием «admin» файл с не менее дефолтным именем — «config.php». Вписываем в него следующее содержимое:

<?php$adminlogin = 'admin';$adminpassw = '12345';?>

Значения переменных adminlogin и adminpassw заменяем логином и паролем — реквизитами доступа в будущую админку. В вышеуказанном примере логин — «admin», пароль — «12345».

Теперь создаём файл входа в админку. Создаём новый файл в папке admin под названием index.php, и заполняем его кодом следующего содержания:

<?phpsession_start ();if (!empty ($_SESSION['admin'])){if ($_SESSION['admin']){?><html><head><title>Административная панель</title><style type= text/css>#wrap{width: 100%;height: 100%;}.loginbox1{width: 300px;padding: 4px;border: 1px solid #777;background-color: #777;color: white;font-weight: bold;}.loginbox2{width: 300px;padding: 4px;border: 1px solid #777;color: #777;}</style></head><body><center><table cellpadding=0 cellspacing= «0» id= «wrap»><tr><td align=center><table cellpadding=0 cellspacing= «0»><tr><td class=loginbox1 align=center>Вход выполнен</td></tr><tr><td class=loginbox2 align=center><a href=admin_main.php>Перейти к административной панели</a></td></tr></table></td></tr></table></center></body></html><?exit;}}$_SESSION['admin'] = false;include ('config.php');function not_logged_in (){echo '<html><head><title>Административная панель</title><style type=text/css>#wrap{width: 100%;height: 100%;}#wraptd{padding: 20px;}.loginbox1{width: 300px;padding: 4px;border: 1px solid #777;background-color: #777;color: white;font-weight: bold;}.loginbox2{width: 300px;padding: 4px;border: 1px solid #777;color: #777;}.loginbox2 input{width: 200px;margin: 3px 0;border-color: #888;color: #777;}</style></head><body><center><table cellpadding=0 cellspacing=0 id=wrap><tr><td align=center id=wraptd><table cellpadding=0 cellspacing=0><tr><td class=loginbox1 align=center>Вход в административную панель</td></tr><tr><td class=loginbox2 align=center><form action=index.php method=post><input type=text name=login value=Логин><br><input type=text name=password value=Пароль><br><input type=submit value=Войти></form></td></tr></table></td></tr></table></center></body></html>';exit;}if (!$_POST) not_logged_in ();if (!$_POST['login']) not_logged_in ();if (!$_POST['password']) not_logged_in ();if ($_POST['login']!= $adminlogin) not_logged_in ();if ($_POST['password']!= $adminpassw) not_logged_in ();$_SESSION['admin'] = true;?><html><head><title>Административная панель</title><style type=text/css>#wrap{width: 100%;height: 100%;}.loginbox1{width: 300px;padding: 4px;border: 1px solid #777;background-color: #777;color: white;font-weight: bold;}.loginbox2{width: 300px;padding: 4px;border: 1px solid #777;color: #777;}</style></head><body><center><table cellpadding=0 cellspacing=0 id=wrap><tr><td align=center><table cellpadding=0 cellspacing=0><tr><td class=loginbox1 align=center>Вход выполнен</td></tr><tr><td class=loginbox2 align=center><a href=admin_main.php>Перейти к административной панели</a></td></tr></table></td></tr></table></center></body></html>

Теперь нужно написать скрипт выхода из админки. Скрипт проверяет, выполнен ли вход и, если вход выполнен, производится выход. Создаём файл admin_logout.php и впихиваем в него следующий код:

<?phpsession_start ();if (!$_SESSION['admin']) die ( Запрещено );session_destroy ();?><html><head><title>Административная панель</title><style type= «text/css»>#wrap{width: 100%;height: 100%;}.loginbox1{width: 300px;padding: 4px;border: 1px solid #777;background-color: #777;color: white;font-weight: bold;}.loginbox2{width: 300px;padding: 4px;border: 1px solid #777;color: #777;}</style></head><body><center><table cellpadding= «0» cellspacing= «0» id= «wrap»><tr><td align= «center»><table cellpadding= «0» cellspacing= «0»><tr><td class= «loginbox1» align= «center»>Выход выполнен</td></tr><tr><td class= «loginbox2» align= «center»><a href=[color=#33CC00]../index.php[/color]>Вернуться на главную страницу</a></td></tr></table></td></tr></table></center></body></html>

Админка уже есть) можно в неё зайти и выйти))) проверять это не надо) т.к. ещё файла админки нету

Создаем файл admin_main.php

вот теперь она есть)) вставляем туда код:

<?phpsession_start ();if (!$_SESSION['admin']) die ( Запрещено );?>ТУТ МОЖНО ЧТОТО НАПИСАТЬ ДЛЯ ТЕСТА))))И попытатся зайти в админку ))))Если всё вышло знач для вас 2-й раздел))

<?php

session_start ();

if (!$_SESSION[‘admin’]) die ( Запрещено );

?>

этот код мы жолжны вставить в самом верху, и если вы надумаете подключать ещё файлы к админке он тоже должен быть там (это код защиты)

Часть 2 СОЗДАЁМ АДМИНКУ — точнее её ВНУТРЕННОСТЬ!!

наверняка на вашем сайте всегда есть файлик config.php или dbconfig.php ну чтото всегда есть и надо ним как-то управлять! Вот выход!

У нас уже есть админка и главным файлом является admin_main.php (там де всё должно быть) надо нагружать его:

Я нашёл в нете чудо скрипт для редактирования INI файлов он отлично подошёл

Вот он:

Создаём фалик например «configedit.php» или можно сразу в admin_main.php пишем туда:

<?phpsession_start ();if (!$_SESSION['admin']) die ( Запрещено ); ?> <?php/************************************************************************* iniread - php ini file generator Copyright © 2001 - Paul Gareau This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA*************************************************************************/// edit these values//////////////////////$app_name = ' Описания конфигов ';$ary_file_name[0] = ' путь к конфигам/config.php ';//$ary_file_name[0] = ' не имеет значенияяяя)) ';// ill take it from here//////////////////////////$num_files = count($ary_file_name);if($num_files==1 && ! $file_name)header("Location: $PHP_SELF?file_name=$ary_file_name[0]");// save variables to file////////////////////////////if($form_submit) {$fp = @fopen($file_name, 'w') or die("Could not open <b>$file_name</b> for writing!");fwrite($fp, "<?phpnn");if($other)	fwrite($fp, stripslashes($other)."n");$num_vars = count($var_name);for($line=0; $line<$num_vars; $line++) {	fwrite($fp, $var_name[$line]."t= ");	$var_val[$line] = ereg_replace("rn", " ", $var_val[$line]);	// if variable value is not numeric and it doesnt start with a quote or if its an empty string	// put quotes around it, otherwise just write string to file	if(! is_numeric($var_val[$line]) && ereg("^[^"']{1,1}|^$", $var_val[$line]))		fwrite($fp, """.stripslashes($var_val[$line])."";");	else		fwrite($fp, stripslashes($var_val[$line]).";");	if($var_cmt[$line])		fwrite($fp, "t// ".str_replace(";", ",", stripslashes($var_cmt[$line])));	fwrite($fp, "n");}fwrite($fp, "n?>");fclose($fp);$msg = "Конфигурационный файл <b>$file_name</b> Записан)!n";}// print form page////////////////////echo "<html>n";echo "<head><title>$app_name</title></head>n";echo "<style>n";echo "h1 {font-family: verdana; font-size: 20pt}n";echo "h3 {font-family: verdana; font-size: 13pt}n";echo "th {font-family: verdana; font-size: 10pt; font-weight: bold}n";echo "td {font-family: tahoma; font-size: 10pt}n";echo "body {font-family: tahoma}n";echo "input {font-family: 'lucida console', courier; font-size: 10pt}n";echo "</style>n";echo "<body><h3>$app_name</h3>n";echo $msg;if($file_name) {// read variables + data into arrays///////////////////////////////////////$ary_file = file($file_name);$num_lines = count($ary_file);$var_line = 0;for($file_line=0; $file_line<$num_lines; $file_line++) {	$line_content = $ary_file[$file_line];	if(ereg('^[$#].+;', $line_content)) {		$eq_pos = strpos($line_content, '=');		$sc_pos = strrpos($line_content, ';');		$cmt_pos = strpos($line_content, '//', $sc_pos);		$ary_parsed[$var_line][0] = trim(substr($line_content, 0, $eq_pos));		$ary_parsed[$var_line][1] = trim(substr($line_content, $eq_pos+1, $sc_pos-$eq_pos-1));		if($cmt_pos)			$ary_parsed[$var_line][2] = trim(substr($line_content, $cmt_pos+2, strlen($line_content)-$cmt_pos));		$var_line++;	}	elseif(ereg("[^(n|<?php|?>)]", $line_content))		$ary_other[] = $line_content;}// print edit form/////////////////////$num_vars = count($ary_parsed);$num_xtra = count($ary_other);echo "<form action='$PHP_SELF' method='POST'>n";echo "<input type='hidden' name='file_name' value='$file_name'>n";echo "<table border=0 cellpadding=2 cellspacing=1>n";if(in_array('iniread_spacer', $ary_file)) {	echo "<tr bgcolor='#BBCCDD'>n";	echo "<th><b>Variable</b></th>n";	echo "<th><b>Value</b></th>n";	echo "<th><b>Comment</b></th>n";	echo "</tr>n";}for($row=0; $row<$num_vars; $row++) {	$var_orig = $ary_parsed[$row][0];	$var_name = $ary_parsed[$row][0];	$var_name = str_replace("_", " ", ucfirst(str_replace("$", "", $ary_parsed[$row][0])));	$var_val = $ary_parsed[$row][1];	$var_cmt = $ary_parsed[$row][2];	$bgcolor = ($row % 2) ? '#EEEEEE' : '#DDDDDD';	if($var_orig=='#iniread_spacer') {		$var_show = ereg_replace("^["'](.+)["']", '\1', $var_val);		$var_val = ereg_replace("^["'](.+)["']", '\1', $var_val);		echo "<input type='hidden' name='var_name[]' value='$var_orig'>n";		echo "<input type='hidden' name='var_val[]' value='$var_val'>n";		echo "<input type='hidden' name='var_cmt[]' value=''>n"; //need to hold this space!		echo "<tr bgcolor='#CCCCCC'><td colspan=3><h3>$var_show</h3></td></tr>n";		echo "<tr bgcolor='#BBCCDD'>n";		echo "<th><b>Variable</b></th>n";		echo "<th><b>Value</b></th>n";		echo "<th><b>Comment</b></th></tr>n";	} elseif($var_orig=='#iniread_comment') {		$var_show = ereg_replace("^["'](.+)["']", '\1', $var_val);		$var_val = ereg_replace("^["'](.+)["']", '\1', $var_val);		echo "<tr bgcolor='#CCCCCC'>n";		echo "<td colspan=3> <b>»</b> $var_shown";		echo "<input type='hidden' name='var_name[]' value='$var_orig'>n";		echo "<input type='hidden' name='var_val[]' value='$var_val'>n";		echo "<input type='hidden' name='var_cmt[]' value=''>n"; //need to hold this space!		echo "</td>n";		echo "</tr>n";	} else {		echo "<tr bgcolor='$bgcolor'>n";		echo "<td valign='top'>$var_name<input type='hidden' name='var_name[]' value='$var_orig'></td>n";		echo "<td valign='top'>";		if(is_numeric($var_val)) {			echo "<input type='text' size=30 name='var_val[]' value='$var_val'>";		} else {			$rows = (strlen($var_val)>30) ? 4 : 1;			echo "<textarea rows=$rows cols=30 name='var_val[]' wrap='virtual'>$var_val</textarea>";		}		echo "</td>n";		echo "<td valign='top'><input type='text' size=45 name='var_cmt[]' value='$var_cmt'></td>n";		echo "</tr>n";	}}// print non variables in a text area////////////////////////////////////////echo "<tr bgcolor='#CCCCCC'><td colspan=3><h3>Non variables</h3></td></tr>n";echo "<tr bgcolor='#DDDDDD'><td colspan=3>n";echo "<textarea rows=5 cols=80 name='other' style='width: 100%' wrap='virtual'>";for($row=0; $row<$num_xtra; $row++)	echo $ary_other[$row];echo "</textarea></td>n";echo "</tr>n";echo "<tr bgcolor='#CCCCCC' colspan=3>n";echo "<td colspan=3>n";echo "<input type='submit' name='form_submit' value=' Сохранить '>n";echo "<input type='reset' value=' Reset '>n";echo "</td>n";echo "</tr>n";echo "</table>n";echo "</form>n";}// print drop down file list///////////////////////////////echo "<form action='$PHP_SELF' method='POST'>n<select name='file_name'>n";for($file=0; $file<$num_files; $file++)echo "<option value='$ary_file_name[$file]'>$ary_file_name[$file]n";echo "</select>n";echo "<input type='submit' value='Открыть'>n";echo "</form>n";echo "<br>n";echo "</body>n";echo "</html>n";?>

Если вы сделали это в отдельном файлике вам надо сделать в admin_main.php ссылку на это творение или чтото своё придумать ))

softboard.ru


You May Also Like

About the Author: admind

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.