Cotonti / Open Source PHP Content Management FrameworkContent Management Framework

Форумы / National / Russian / Сборка «Фриланс-биржа» / Как добавить ссылку на страницу

12>>>

akila
#1 13.09.2016 12:18

Как добавить ссылку на страницу и можна ли добавть отдельную страницу на писаную на чистом html, помогите плз.

Oldman
#2 13.09.2016 12:50

Можно.

1. Какую ссылку надо добавить? Внутреннюю/внешнюю или что то особенное?

2. Один из вариантов насчёт "чистого" html - https://www.cotonti.com/extensions/navigation-structure/pagetextbyid

3. ещё один вариант сделать "standalone" страницу и загнать её в категорию system

4. Сделать страничку с уникальным page.XXX.tpl

akila
#3 13.09.2016 14:05

У меня есть пользовательское соглашение и мне нужно чтобы на него можна было зайти с меню. Просто я только начал разбиратся с котонти по этому многое не шарю.

Виктор
#4 13.09.2016 17:37
#42065 akila:

У меня есть пользовательское соглашение и мне нужно чтобы на него можна было зайти с меню. Просто я только начал разбиратся с котонти по этому многое не шарю.

<a href="index.php?e=useragreement">пользовательское соглашение</a> в header.tpl в блок меню, или футер

<div class="navbar">
			<div class="navbar-inner">
				<ul class="nav">
					<li<!-- IF {PHP.env.ext} == 'index' --> class="active"<!-- ENDIF -->><a href="{PHP|cot_url('index')}">{PHP.L.Home}</a></li>
					<li<!-- IF {PHP.env.ext} == 'projects' --> class="active"<!-- ENDIF -->><a href="{PHP|cot_url('projects')}">{PHP.L.projects_projects}</a></li>
					<li<!-- IF {PHP.env.ext} == 'users' AND ({PHP.group} == {PHP.cot_groups.4.alias} AND {PHP.m} == 'main' --> class="active"<!-- ENDIF -->><a href="{PHP.cot_groups.4.alias|cot_url('users', 'group='$this)}">{PHP.cot_groups.4.name}</a></li>
					<li<!-- IF {PHP.env.ext} == 'users' AND ({PHP.group} == {PHP.cot_groups.7.alias} AND {PHP.m} == 'main' --> class="active"<!-- ENDIF -->><a href="{PHP.cot_groups.7.alias|cot_url('users', 'group='$this)}">{PHP.cot_groups.7.name}</a></li>
					<li<!-- IF {PHP.env.ext} == 'market' AND !{PHP.type} --> class="active"<!-- ENDIF -->><a href="{PHP|cot_url('market')}">{PHP.L.market}</a></li>
<li><a href="index.php?e=useragreement">пользовательское соглашение</a></li>
				</ul>
			</div>
		</div>

 

Додано 2 хвилини потому:

пользовательское соглашение плагин useragreement
Macik
#5 14.09.2016 04:57

Еще трюк по поводу «отдельную страницу на писаную на чистом html»:  если в тексте страницы добавить вначеле строку `include: somepage.html`, то парсер вставит на эту страницу файл `datas/html/somepage.html`.

Ограничения этого метода:

  • должен быть установлен модуль `page` и создана под это отдельная страница (в которую и будет загружено содержимое файла)
  • дизайн шапки и подвала будет стандартный, т.е. содержимое файла должно включать в себя _только текст_ страницы без заголовков (если надо изменять шапку смотри в сторону переменной) `$cfg['enablecustomhf']`  
  • директива `include:` должна идти в самом начале текста страницы (т.е. лучше для страницы отключить парсер html, т.к. например Ckeditor любит в начало добавлять тег параграфа).
https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F
Oldman
#6 14.09.2016 06:46

Скорее всего это обычные хотелки начинающегоsmiley Типа "я пока не понимаю как сделать правильно, но я знаю КАК сделать это в статическом html"

Ничего страшного, надо просто следовать этому дао.smiley, а не ломать его под себя. Результаты на порядок интереснее.

akila
#7 14.09.2016 09:23
#42067 Macik:

Еще трюк по поводу «отдельную страницу на писаную на чистом html»:  если в тексте страницы добавить вначеле строку `include: somepage.html`, то парсер вставит на эту страницу файл `datas/html/somepage.html`.

Не понял как иеммно вставлятьsmiley и еще у меня есть папка datas, но там не  папки html.

Oldman
#8 14.09.2016 09:46

Никто не в силах помешать Вам создать эту папкуsmiley, если, конечно у Вас есть доступ к хостингу.

Создаёте файл бла-бла-бла.html в этой самой папке

1. Создаёте страницу

2. набираете в редакторе `include: бла-бла-бла.html`

3 сохраняете страницу

4 проверяете чтобы в тексте не было лишних тегов типа <p>. Именно для этого Вам и посоветовали отключить  html-парсер для ЭТОЙ страницы

akila
#9 14.09.2016 13:02

Уж извините за столь глупые вопросы, но еще один, как вывести страницы добавленные через модуль page?

Oldman
#10 14.09.2016 22:32

Это не напрягаясь делает сама CMSsmiley. Было бы чего выводить. То есть это самое простое действие системы. То что вы сейчас читаете выводит модуль Forum. А при вашей попытке прочитать какую-нибудь статью скажем из раздела новости или документы как раз и задействуется модуль page. Каждая страница при создании получает свой уникальный id. При обращении к ней сама CMS строит запрос как правило вида http://ВАШ_САЙТ/page.php?id=ххх

То что вы не видите на ЭТОМ сайте этой конструкции в адресной строке браузера есть результат работы "маскировщика URL", но поверьте, исходно это именно так и выглядит.

akila
#11 15.09.2016 08:04
#42070 Oldman:

Никто не в силах помешать Вам создать эту папкуsmiley, если, конечно у Вас есть доступ к хостингу.

Создаёте файл бла-бла-бла.html в этой самой папке

1. Создаёте страницу

2. набираете в редакторе `include: бла-бла-бла.html`

3 сохраняете страницу

4 проверяете чтобы в тексте не было лишних тегов типа <p>. Именно для этого Вам и посоветовали отключить  html-парсер для ЭТОЙ страницы

У меня вот этот метод вывел содержимое html файла как содержимое txt файла, то есть все теги были отбражены, подскажите чем моя ошибка, я во время создание страницы отключила парсер и в описании написал include: partner.html, на страницу вывело <h1>LOL</h1>

Oldman
#12 15.09.2016 12:28

Надо полагать <h1>LOL</h1> это и есть содержимое html-файла?

Тогда ответ просто очевиденsmiley - включите для этой страницы html-парсер. Отключать его Вам рекомендовали для того, чтобы при создании страницы редактор не насовал в него лишних тегов от доброты душевной.

Macik
#13 15.09.2016 14:11
#42073 akila:
на страницу вывело <h1>LOL</h1>

И на всякий случай проверьте глобальные настройки:
Administration panel → Configuration → Main Settings → Markup parser: HTML

 

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F
akila
#14 16.09.2016 07:28
#42077 Macik:
#42073 akila:
на страницу вывело <h1>LOL</h1>

И на всякий случай проверьте глобальные настройки:
Administration panel → Configuration → Main Settings → Markup parser: HTML

 

У меня bbcode стоял, спасибоsmiley

Добавлено 1 час спустя:

Еще вопрос, правда не по теме, но помогите, я прописал функцию mail (PHP), но письмо не проходить, возможно что это связянос котони. 


Отредактировано: akila (16.09.2016 08:56, 2 года назад)
Macik
#15 19.09.2016 12:59
#42079 akila:
Еще вопрос, правда не по теме, но помогите, я прописал функцию mail (PHP), но письмо не проходить, возможно что это связянос котони. 

Из этого предложения не очень понятно где и как вы его используете. 
Если внутри Cotonti, то в первую очередь убедитесь, что письма от самого движка вам приходят (т.к. Cotonti по умолчанию использует тот же самый `mail()`). Если так (от движка письма приходят), то изучайте параметры вызова этой функции — дело скорее всего в них.

Если никакие письма не приходят, то тут очень много вариантов (т.к.  тут работает цепочка «настройки PHP у хостера → настройки почтового сервера → настройки обратного адреса/домена → политика принимающего ссервера»). Вот тут мной описан вариант решения, если справиться со стандартной функцией `mail()` никак не получается (p.s. указанный вариант не панацея и тоже требует некоторого понимания технической стороны вопроса). 
 

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F

12>>>