Создание мода, как скопировать файлы мода?

Автор thunderamur, 20 июня 2016, 15:09:37

« назад - далее »

0 Пользователи и 3 гостей просматривают эту тему.

thunderamur

Делаю мод, возник вопрос как скопировать файлы на форум?

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

GeorG

Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

digger®

Цитата: thunderamur от 20 июня 2016, 15:09:37Делаю мод, возник вопрос как скопировать файлы на форум?

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

Вся нужная информация есть тут http://wiki.simplemachines.org/smf/Category:Package_SDK

thunderamur

Цитата: GeorG от 20 июня 2016, 15:13:01По ftp...
Мне нужно, чтобы все было в моде и ставилось из админки.

thunderamur

Цитата: digger® от 20 июня 2016, 15:14:28Возьмите любой готовый мод и посмотрите установщик.

Вся нужная информация есть тут http://wiki.simplemachines.org/smf/Category:Package_SDK
Выбрал мод какого-то портала, заглянул, а там вообще php-скрипты огромные в ходу, вместо install.xml и т.п.
И ман, который вы предложили я смотрел...
Возможно подходят
<move-dir />

    Move an entire directory. May also be used to rename a directory by moving it to it's parent directory with a different name.
    Optional: Yes
    Attributes:
        from: the path of the directory you want to move
        name: the name of the directory
        destination: the path to where you want to put the directory

<move-file />

    Move a file. May also be used to rename a file by moving it to it's parent directory with a different name.
    Optional: Yes
    Attributes:
        from: the path of the file you want to move
        name: the name of the file
        destination: the path to where you want to put the file

но что есть
from: the path of the file you want to moveне понятно

GeorG

В данный момент пишу мод, вот например строчки от туда.
Копирует файл Reputation.template.php который находится в папке default установщика, в директорию форума темы default:
<require-file name="default/Reputation.template.php" destination="$themedir" />
Копирует файл Admin-Reputation.php в директорию Sources, сам файл в моде находится в папке core:
<require-file name="core/Admin-Reputation.php" destination="$sourcedir" />
Вам по аналогии.
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

thunderamur


thunderamur

<?xml version="1.0"?>
<!DOCTYPE modification SYSTEM "http://www.simplemachines.org/xml/modification">
<modification xmlns="http://www.simplemachines.org/xml/modification" xmlns:smf="http://www.simplemachines.org/">
<id>thunderamur:Sape</id>

<require-dir name="secret" destination="$boarddir" />

<file name="$boarddir/index.php">
<operation>
<search position="after"><![CDATA[<?php

/**
 * Simple Machines Forum (SMF)
]]></search>
<add><![CDATA[<?php
     if (!defined('_SAPE_USER')){
        define('_SAPE_USER', 'secret');
     }
     require_once(realpath($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php'));
     $sape = new SAPE_client();
?>

]]></add>
</operation>
</file>

</modification>

Отработала только модификация файла, директория не создана и соответственно файлы не скопированы.

GeorG

Может прав недостаточно на запись, а может что с ошибкой написали или неправильно путь указали?

Можете полностью структуру файлов из мода копировать на сервер, например:

Копировать папку default (вместе с содержимым) в директорию темы default:
<require-dir name="default" destination="$themedir" />
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

thunderamur

Я как раз require-dir и пытаюсь использовать
<require-dir name="secret" destination="$boarddir" />пути правильные, права на корень 777.

Я вообще правильно использую тег, может быть его в другом месте надо вставлять?


thunderamur

Ага, этот код должен быть в package-info.xml.
Спасибо, пробую.

thunderamur

Отлично, файлы изменяются, папка копируется и мод нормально удаляется.
Теперь осталось узнать как изменить права на директорию?

digger®

Цитата: thunderamur от 20 июня 2016, 20:21:49Отлично, файлы изменяются, папка копируется и мод нормально удаляется.
Теперь осталось узнать как изменить права на директорию?
Через Package SDK никак. А зачем их менять?

thunderamur

Для sape.ru надо чтобы их папка была 777, так у них в мануале написано.

GeorG

Зависит от настройки самого сервера.
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

Yarik

Цитата: thunderamur от 20 июня 2016, 22:13:51Для sape.ru надо чтобы их папка была 777
Хех,а ключи от квартиры им не нужны?ИМХО
Папка с 777 правами уж не в корне форума лежать должна?Опасно иметь папки с такими правами у себя на хостинге.
Если права на файл установлены 777, то очень часто это может означать, что не только прочитать, но и ЗАПИСАТЬ что угодно в этот файл может любой Ваш "сосед" по хостингу, чей сайт размещен на том же сервере.


thunderamur

Цитата: Stalker от 20 июня 2016, 22:23:49Хех,а ключи от квартиры им не нужны?ИМХО
Папка с 777 правами уж не в корне форума лежать должна?Опасно иметь папки с такими правами у себя на хостинге.
Если права на файл установлены 777, то очень часто это может означать, что не только прочитать, но и ЗАПИСАТЬ что угодно в этот файл может любой Ваш "сосед" по хостингу, чей сайт размещен на том же сервере.
Обычно сосед по хостингу не может попасть в хомяк другого пользователя.

Цитата: digger® от 20 июня 2016, 22:59:37Это костыль, не нужный на нормально настроенном сервере.
Я уточню у сапы этот момент, по идее если веб-сервер работает от пользователя, корому принадлежит каталог и он имеет права на запись, хотя бы 600, то писать веб-сервер в него сможет.

thunderamur

Сапа ответили, можно ставить 755, как по умолчанию, после установки своего мода происходит, так что норм.

Всем спасибо за участие.