Ну уже все намного лучше, почитайте топик. После этого было введено кеширование.
Да и скорость работы вы сами можете видеть.
По поводу страниц объясню на примере
Клик по ссылке "Редактирование страниц" - в самое начало.
Клик по ссылке "Полезные статьи" - сделать страницу "Полезные статьи" родительской
Клик по ссылке "Статьи общей тематики" - сделать эту страницу родительской.
Также справа есть ссылка "Дерево страниц" для удобной навигации.
Поздравляю всех программистов с профессиональным праздником🍻
Помните: программист - это не тот, кто пишет код, а тот, чей код работает!
Сегодня Website CMS продается по сниженной цене - 25$.
Делаем подарки мне и себе :)
С уважением,
Александр.
Происхождение? Пример части статьи?
Смотря как сильно отличаются страницы друг от друга.
Если все однотипные - первая от 15$, остальные от 5$
В любом случае "Сами страницы несложные" - это не показатель, нужно видеть макет для точного определения стоимости.
Так эта картинка генерируется и пользователю отдается совсем не оригинал.
Если в папку img в htaccess положить следующую конструкцию
<FilesMatch "\.(jpg)$">
Order Deny,Allow
Deny from all
allow from local
</FilesMatch>
то вы никогда не скачаете исходный jpeg
Klopopryg, не обращайте внимания на троллей :)
А про див я вам писал, кстати
div id="leftpart" и div id="rightpart" не влезают одновременно
Уменьшите ширину какого-либо из них в css
UPD.
А может должно быть
<div id="centerpart">
<div id="leftpart">
</div>
<div id="rightpart">
А то firebug показывает, что rightpart не входит в centerpart
Website CMS получила дополнительный функционал.
Теперь доступны следующие возможности:
Кроме того усилен контроль безопасности при работе с панелью администратора, переписаны некоторые функции для более быстрой работы, добавлен календарь при выборе даты создания страницы в админпанели.
Стоимость полнофункциональной версии составляет 35$.
Website CMS Lite на данный момент не доступна для покупки, с ней проводятся работы по улучшению функционала.
Благодарю за внимание.
Александр. ICQ 58шесть3шесть7
a img { border:0px; }
Это элементарная защита, а не кладезь.
Вот вам, вырезал
<script type="text/javascript"> <!-- function preventSelection(element){ var preventSelection = false; function addHandler(element, event, handler){ if (element.attachEvent) element.attachEvent('on' + event, handler); else if (element.addEventListener) element.addEventListener(event, handler, false); } function removeSelection(){ if (window.getSelection) { window.getSelection().removeAllRanges(); } else if (document.selection && document.selection.clear) document.selection.clear(); } function killCtrlA(event){ var event = event || window.event; var sender = event.target || event.srcElement; if (sender.tagName.match(/INPUT|TEXTAREA/i)) return; var key = event.keyCode || event.which; if (event.ctrlKey && key == 'A'.charCodeAt(0)) // 'A'.charCodeAt(0) можно заменить на 65 { removeSelection(); if (event.preventDefault) event.preventDefault(); else event.returnValue = false; } } addHandler(element, 'mousemove', function(){ if(preventSelection) removeSelection(); }); addHandler(element, 'mousedown', function(event){ var event = event || window.event; var sender = event.target || event.srcElement; preventSelection = !sender.tagName.match(/INPUT|TEXTAREA/i); }); addHandler(element, 'mouseup', function(){ if (preventSelection) removeSelection(); preventSelection = false; }); addHandler(element, 'keydown', killCtrlA); addHandler(element, 'keyup', killCtrlA); } function clickIE4(){ if (event.button==2){ return false; } } function clickNS4(e){ if (document.layers||document.getElementById&&!document.all){ if (e.which==2||e.which==3){ return false; } } } if (document.layers){ document.captureEvents(Event.MOUSEDOWN); document.onmousedown=clickNS4; } else if (document.all&&!document.getElementById){ document.onmousedown=clickIE4; } document.oncontextmenu=new Function("return false") preventSelection(document); // --> </script>
Вставляете после тега body и будет вам такой же эффект.
В опере Вид - Средства разработки - Исходный код.