minimalic / silverstripe-hackernews
Silverstripe CMS 模块,通过 Hacker News API 检索技术新闻
1.0.3
2024-05-18 12:03 UTC
Requires
- silverstripe/cms: ^4 || ^5
README
用于 Silverstripe CMS 的新闻滚动横幅(动画)。该扩展可以通过使用 Y Combinator 的 Hacker News API 自动获取技术新闻/帖子。
在站点的页脚处查看 iloveunix.com 上的工作演示。
要求
- 兼容 Silverstripe 版本 4 和 5
- Bootstrap(可选,例如 silverstripe-bootloader)
安装
Composer
composer require minimalic/silverstripe-hackernews
重建数据库
通过将 dev/build?flush=all
添加到您网站的 URL 或使用 shell 来重建数据库
vendor/bin/sake dev/build "flush=all"
检索 Hacker News
通过将 dev/tasks/FetchHackerNewsTask
添加到您网站的 URL 或使用 shell(从网站的根目录)来检索第一条新闻
vendor/bin/sake dev/tasks/FetchHackerNewsTask
或者(如果可用)
php vendor/silverstripe/framework/cli-script.php dev/tasks/FetchHackerNewsTask
引导扩展(可选)
Bootstrap(CSS 库)不是必需的,但此扩展使用 Bootstrap 的标记进行模板化。也可以使用自己的 Bootstrap 实现,或者像 silverstripe-bootloader
这样的扩展
composer require minimalic/silverstripe-bootloader
用法
只需在模板中放入 $HackerNews
,例如 Footer.ss
<div class="container-fluid g-0 f-hacker-news"> $HackerNews </div>
配置
配置选项(例如 app/_config/hackernews.yml
)
minimalic\HackerNews\Tasks\FetchHackerNewsTask: posts_to_load: 40 email_message_enable: true email_message_nightly: true email_message_from: server@domain.com: 'Server Name' email_message_to: my.mail@domain.com: 'My Name' minimalic\HackerNews\HackerNewsBanner: banner_speed: 60
自动每日新闻检索
设置 cronjob(shell,作为网络用户)
crontab -e
要每 6 小时检索新闻,从当地时间 0:42 开始,输入以下内容
42 */6 * * * ~/mywebsite/vendor/bin/sake dev/tasks/FetchHackerNewsTask
(~/mywebsite/
是从您的网络用户起点开始的相对路径 - 您也可以使用绝对路径,如 /var/www/mywebsite/
)
贡献
要编译 SCSS 到 CSS,请使用 npm
安装 sass
、nodemon
和 postcss
并运行(仅开发,shell)
cd vendor/minimalic/silverstripe-hackernews/client/src/
npm run-script watch
许可证
见 许可证
版权(c)2024,minimalic.com - Sebastian Finke 保留所有权利。