WhiteKrol

WhiteKrol
Рейтинг
38
Регистрация
08.05.2012
Интересы
WM
agatukr:
Здравствуйте!
На сайте (MODx REVO) установлена форма комментариев с модерацией.
Чанк:
([!Jot? &subscribe=`1`
&docid=`[*id*]` &tagid=`[*id*]` &pagination=`10`
&action=`comments` &authorid=`1`
!]



[!Jot? &action=`form`
&docid=`[*id*]` &tagid=`[*id*]` &moderated=`1` &validate=`1`
&captcha=`2` &notify=`2`!]

Появляется непостоянный глюк. Не могу смодерировать (включить) комментрии - сайт вылетает из управления менеджера. Иногда все же включаются..
Подскажите, пожалуйста где искать.
Заранее благодарен.

Как jot работает на Revo? Признавайтесь! :)

И конечно же замените его на Quip - http://rtfm.modx.com/display/ADDON/Quip.

Detonator:
WhiteKrol там, где я проверял, стоит дефолтный шаблон. Может кто-нибудь на своих сайтах на Evo проверить?

На своих evo-сайтах &scheme=`full` работает исправно)

Detonator:
Чистил, разумеется. Это чуть ли не первое действие при любых глюках =)

Сейчас еще раз попробовал &scheme=`full`, получается интересная ситуация: ссылки первого уровня абсолютные, а второго — относительные 😕

Возможно вы не во всех шаблонах используете [[+wf.link]]?

paran03d:
Можете подсказать как на модх реализовать мультидоменность с одной админкой?

Штатными средствами это реализуется только на Revolution при помощи контекстов.

Статей на эту тему помоему миллион - http://yandex.ru/yandsearch?text=%D0%BC%D1%83%D0%BB%D1%8C%D1%82%D0%B8%D0%B4%D0%BE%D0%BC%D0%B5%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D1%8C+modx+revo&from=os&lr=56

Detonator:
Хм, а у меня всё равно выводятся относительные URL`ы в Evo при добавлении &scheme=`full` в Wayfinder.

А makeUrl я поправить самостоятельно не смогу. Но за идею спасибо, хотя бы знаю теперь, в какую сторону копать..

Странно. Должно работать

http://rtfm.modx.com/display/ADDON/wayfinder


&scheme
format for how URLs are generated. Possible values are (based on makeURL API call):
-1 : (default value) URL is relative to site_url
0 : see http
1 : see https
full : URL is absolute, prepended with site_url from config
abs : URL is absolute, prepended with base_url from config
http : URL is absolute, forced to http scheme
vold57:
Для меню страниц раздела использую Wayfinder:

Задача:
1. Сделать, чтобы в заголовке раздела было видно для какого раздела это меню - Страницы раздела "имя раздела"?
2. Чтобы заголовок раздела отображался только в том случае, если данная страница содержит подстраницы.

Подскажите как это реализовать.

Если учитывать ваш код:


<?php
$parent = $modx->documentObject['parent'];
if ($parent==0) return
'[[Wayfinder? &level=`1` ]]';
else return
'[[Wayfinder? &startId=`[*id*]` &level=`1` ]]';

Судя по вызову [*id*] - у вас MODx Evo.

1. Модифицируйте ваш код:


<?php

$parent = $modx->documentObject['parent'];
$parentDoc = $modx->getDocument($parent);

if ($parent==0) return $modx->getChunk('simpleMenu');
else return $modx->parseChunk('parentMenu', $parentDoc, '[+', '+]');

2. Создайте чанк simpleMenu с кодом:

[[Wayfinder? &level=`1` ]]

3. Создайте чанк parentMenu с кодом:


<h1>[+pagetitle+]</h1>
<div id="menu">
[[Wayfinder? &startId=`[+id+]` &level=`1` ]];
</div>

Измените верстку в чанках на ту, которая вам нужна и готово =)

Также посмотрите описание метода getDocument и список полей которые он выгружает по ссылке:

http://modx-cms.ru/dokumentatsiya/dokumentacziya-evo/razrabotka/programmirovanie/modx-api/getdocument.html

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

[+alias+] (псевдоним документа) или [+description+] (описание)

---------- Добавлено 16.11.2012 в 07:45 ----------

Металл:
Может здесь?
Пробовал вводить 0, 1.
Не получается.

Да, он самый. Попробуйте значение "full" и где-нибудь в документе вызвать [[~id]] чтобы посмотреть урл. Ссылки в wayfinder он менять не будет, для WF нужно указывать значение &scheme как вы писали ранее.

Металл:
А в Revo где, чтобы одним махом? :)

Если мне не изменяет память это можно сделать какой-то настройкой контекста. Чтобы вспомнить какой именно нужно смотреть мануал.

Металл:
Извиняюсь, не совсем ответ на ваш вопрос, но в Revo, например, чтобы был абсолютный URL в пунктах меню, нужно добавить &scheme=`full` в Wayfinder:

[[Wayfinder? &startId=`0` &scheme=`full`]]

Вы правы, в Evo работает абсолютно аналогично.

---------- Добавлено 16.11.2012 в 00:01 ----------

Detonator:
Можно ли в MODx Evo массово (через плагин, к примеру) поменять все URLы на абсолютные?
Думаю провести эксперимент, проверить, даст ли это реальный профит в плане SEO. Но менять во всех чанках на всех сайтах — дело неблагодарное.

Если вы хотите сделать абсолютно для всего сайта правками в одном месте вам потребуется изменить функцию makeUrl которая находится в /manager/includes/document.parser.class.inc.php

Металл:
Белый Кролик, вы куда подевались! Снова нас забросили! :)

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

И чтобы к каждой новости прикреплялась картинка - маленькая на превью-новости (на страничке Новости) и большая на страничке полной новости. И чтобы в альтах и тайтлах картинок автоматом прописывался заголовок новости.

Вы так и будете искать готовые рецепты на каждую банальную задачу?

Чтобы сделать новости вам потребуется:

1. Научиться пользоваться TV-параметрами от [[*pagetitle]] до ваших собственных [[*imgNews]]

2. Познакомится с модификаторами http://rtfm.modx.com/display/revolution20/Input+and+Output+Filters+(Output+Modifiers) которые помогут вам к примеру сделать красивую дату новости или сгенерировать аннотации

3. Попробовать в действии кастомный модификтор phpThumbOf http://rtfm.modx.com/display/ADDON/phpThumbOf для генерации превью изображений - это действительно просто.

4. Тщательно изучить работу http://rtfm.modx.com/display/ADDON/getResources http://rtfm.modx.com/display/ADDON/wayfinder и http://rtfm.modx.com/display/ADDON/getpage

После этих операций вы не только новости, вы любой контент отфаршируете и подадите в лучшем виде :)

DiAksID:
без обид, но консультанту надо знать такие простейшие фичи MODx ;) азбучные как бе:

заставить не сложно: всего лишь играем с параметрами "includeDocs" и/или "excludeDocs" и/или "where"(тут синтаксис типа [{"id:IN": [[[$чанк]]]}]), которые задаются кэшируемыми чанками, в которых getResources собирает id документов с нужными значениями TV.

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

Без обид, но это не фичи MODx - это в чистом виде извращение :)

Если вы можете составить нормальное условие выборки для WF через where, зачем этот велосипед с тяжеловесом getResource? Почему не проще написать свой простой 5 строчный сниппет, который пробежится по нужным документам и выберет вам нужные?

$modx->getCollection() всегда же к вашим услугам, нет?

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

---------- Добавлено 11.11.2012 в 12:29 ----------

Металл:
Я так и не понял, секретарша должна делать 2 действия чтоли?
1. Сначала создать документ, указать, чтобы он не показывался в меню.
2. В папке (например) "Левое меню" создать пункт меню и ссылку на этот документ.
Если так, то это конкретная засада.

[[!Wayfinder? &startId=`21` &scheme=`full` ]] - это "Главное меню".

[[!Wayfinder? &startId=`22` &scheme=`full` ]] - это "Левое меню".

Да и какая-то фигня, папки "Главное меню" и "Левое меню" отображаются в адресе сайта domain.ru/glavnoe-menyu и domain.ru/levoe-menyu - наверное можно как-то запретить формирование и их вывод.

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

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

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

1 2345 6
Всего: 59