Категории для ваки
нужно описание нужного функционала, как можно более подробное
-
Tavi категории
- Ку Ме: /Roman Ivanov, вспомни кластер-документы *)
- Ку Ме: не очень понял, чем это фундаментально отличается от /Back Links.
- Meta Wizard: Прочтите пример, как один документ засовывается в категорию. Каждый документ может быть в скольких угодно категориях. С кластерами так нельзя.
- /Roman Ivanov: я вообще не понял, что это. Там слишком много всего написано на иностранном езыке :)
- /Же Не: Это ключевые слова что ли? Тогда /Back Links – не плохо их реализуют. Есть только две беды – не интуитивно и нет автоматического сбора ключевых слов. Второе – хуже. P.S. Хотелось бы ссылаться на ключевое слово как-нить так – Кейворд:ПроСтраусов
-
http://www.wakkawiki.de/WakkaCategories2 или
http://www.wakkawiki.de/WakkaCategories? И нужно ли оно нам?
- /Ку Куц нуждается в чьих-нибудь разъяснениях о том, что это и с чем это едят.
- Ку Ме думает, что keyword:fucker можно сделать через интервики легко.
- YuliaShabunio На тему идеи "keyword:КлючевоеСлово"
- Хочется способ увидеть список ключевых слов в системе. (Важно)
- /Cat, на которой {{index}}
- Хочется один раз набрать keyword и потом много ключевых слов. Например так: keywords:(Linux, Windows, Must Die)
- Хочется набирать кейворд, не меняя раскладку клавиатуры.
- Если есть ключевое слово ВикиИмя, и у меня есть страница «ВикиИмя", может имеет смысл в списке слов с этим кейвордом показать и одноименную страницу ?
- Ку Ме: Мы тут говорили про эту телегу, есть пара идей, которые я не запомнил, алас.
- Ку Ме: ещё идея, простая, как банан. {{Key words="Linux", "Windows", "Mustdie"}}, но это не удовлетворяет смене раскладки. И концептуально кривовато.
/Alexander Nickolsky : Только собрался писать, что хочу ключевые слова. Как вот оно – здесь.
Я прикрутил параметр к каталогу – можно получить каталог одного кластера. Заквасить не могу – у меня не та версия, что в CVSе. Там всего строчек 5 поправить :
В wakka.php добавляем метод :
function LoadClusterPages($cluster)
{ return $this->LoadAll("select ".$this->pages_meta." from ".$this->config["table_prefix"]."pages where tag like '".mysql_escape_string($cluster)."/%' and latest = 'Y' order by BINARY tag"); }
В actions/pageindex начало так :
if (!isset($root)) { $root=""; $pages = $this->LoadAllPages();}
else {$pages = $this->LoadClusterPages($root); $root=$root."/";}
if ($pages)
{
foreach ($pages as $page)
{
$access =$this->HasAccess("read",$page["tag"]);
if ($access || !$this->config["hide_locked"])
{
if (!preg_match("/^Comment/", $page["tag"])) {
$firstChar = strtoupper($page["tag"][strlen($root)]);
if (!preg_match("/".ALPHA."/", $firstChar)) { $firstChar = "#"; }
далее все по тексту.
У меня есть толковый словарь. Он весь лежит в кластере, соотв. с моей примочкой я получаю алфавитный список всех слов словаря. Но мне надо еще разделить по категориям – термины специальные, общие, из такой предметной области, из другой итп.
Back Links помогает, но не очень. Дело в том, что сами по себе категории – пустые по определению. Т.е. по ссылке там идти некуда. Кроме того, они не должны принадлежать кластеру словаря, а это значит, что текст ссылки получается довольно корявый [[../Категория Категория]] и так каждый раз.
Собственно, что нужно: чтобы что-нть вроде keyword:сленг, keyword:специальное итд НЕ отображалось вообще.
И специальный find, который будет приклеивать keyword: к каждому слову для поиска. Какой там символ для форматирования не задействован?
\%\%, $$, ;;? Вот можно его вместо keyword:...
RomanIvanov: хочет знать, как изменилось понимание категорий у участников проекта и сочуствующих по прошествии времени и с введением синтаксиса
Wacko Ideas.Категории.
- /Ku Me: Рубрика.Windows, Рубрика.OpenSource, Rubrika.Мысли — мне кажется, этого достаточно + BackLinks for="Рубрика.Мысли"
AndreyNovikov /10.02.2004 21:35/ Не знаю как вам, а мне кажется правильным, если каталог (что на самом деле index, а это – разные вещи) показывает каждую страницу отдельно, а не весь путь в кластере. Вот, как я это сделал (целиком исходник
pageindex.php):
<?
if ($pages = $this->LoadAllPages())
{
foreach ($pages as $page)
{
if (!preg_match("/^Comment/", $page["tag"]))
{
$access =$this->HasAccess("read",$page["tag"]);
if ($access || !$this->config["hide_locked"])
{
$pp = explode("/", $page["tag"]);
$pl = "";
foreach ($pp as $subpage)
{
$pl .= $subpage;
if ($this->LoadPage($pl, "", 1, 1))
$ph[$subpage] = $pl;
$pl .= "/";
}
}
}
}
uksort($ph, "strnatcasecmp");
reset($ph);
foreach ($ph as $page => $link)
{
$firstChar = strtoupper($page[0]);
if (!preg_match("/".ALPHA."/", $firstChar)) { $firstChar = "#"; }
if ($firstChar != $curChar) {
if ($curChar) print("<br />\n");
print("<strong>$firstChar</strong><br />\n");
$curChar = $firstChar;
}
print($this->Link("/".$link,"",$page)."<br />\n");
}
}
else
{
echo $this->GetResourceValue("NoPagesFound");
}
?>
Звиняйте, если что, на PHP уже 6 лет не писал...
UPD Это далеко не окончательный вариант, надо, если совпадают имена конечных документов, добавлять к ним имена документов предыдущего уровня, примерно так:
Фотоальбом, Катя
Фотоальбом, Маша
Но мне кажется, что такая концепция индекса более правильная, чем:
Черт / Знает / Какой / Путь / Катя / Фотоальбом
Черт / Знает / Какой / Путь / Маша / Фотоальбом
MvKozyrev /01.03.2007 20:14/
Система Категорий из ~WikkaWiki