zoukankan      html  css  js  c++  java
  • 在开源UOJ的导航栏中添加新页面链接

    前言

    刚用开源UOJ搭建OJ成功时就想在导航栏那里添加一个站内页面链接,无奈当时乱搞水平低,网上也没有教程,不晓得怎么弄

    今天突然来了闲情乱搞一通,结果还真乱搞成了...特意写下为后来人少走点弯路

    前置技能点

    • Linux基本命令行操作

    如果您觉得这篇文章很naiive,请谅解,因为我对前端一无所知,也是以这样的视角写一份教程

    假设我们要在导航栏加一个叫NCOD的站内链接,并创建一个叫NCOD的站内页面

    Step1

    先找个地方把当前版本用SVN检出,如果您不知道这是什么船新操作,建议您仔细阅读文档中对SVN的介绍

    注意在这里SVN地址后还要加/uoj,例如svn co svn://xxx.xxx.x.x/uoj ...

    然后cd uoj/1/app

    Step2

    首先cd views,然后看到一个叫main-nav.php的玩意没,sudo gedit main-nav.php(如果你是V党请自便)

    然后你就会看到一大串导航栏中已经有的链接名字的英文,比如hack,contests之类的,你只要仿造格式复制一句话加在后面就好了,比如

    <li><a href="/NCOD"><?= UOJLocalde::get('NCOD') ?></a></li>

    这时候你把文件提交到SVN仓库(如果您不知道这是什么,请您还是阅读文档 中对SVN的介绍),会发现导航栏多了个叫NCOD的链接,但是点进去却是404,接下来我们就要创建一个叫NCOD的界面

    Step3

    cd ..app目录,再cd controllers,会发现有一大堆php,这时候只要在这里新建个php文件就行了,例如

    gedit NCOD.php,里面的内容也是有讲究的,例如

    <?php echoUOJPageHeader(UOJLocale::(get('NCOD')))?>
    <article>
      <header>
        <h2 class="page-header">National Coming Out Day</h2>
      <header>
      ...
    <article>
    <?php echoUOJPageFooter() ?>
    

    注意第一行中括号内容要一致,如果您没有把握,您可以复制faq.php的格式看一看

    保存修改后你需要将这个文件加到SVN仓库

    例如svn add NCOD.php

    Step4

    创建php文件后再cd ..app目录

    看到一个叫route.php的玩意没?sudo gedit route.php

    仿照格式加一句话就好了,例如

    Route::any('/NCOD','NCOD.php');

    然后保存修改后再cd /locale/basic,修改zh-cn.php,仿照格式在其中加上导航栏中你想要的中文名字

    例如'NCOD' => '出柜日',

    Step5

    最后回到app文件夹,将这个版本提交上仓库即可

    svn commit -m "..." *

    话说距离初赛还有2天还在搞这个幺蛾子,怕是要凉了

  • 相关阅读:
    App测试从入门到精通之安装、卸载和运行测试
    App测试从入门到精通之App分类和场景操作系统
    一步到位带你入门Selenium
    MAMP和WAMP搭建Web环境,数据库,数据分布可视化
    爬虫 Http请求,urllib2获取数据,第三方库requests获取数据,BeautifulSoup处理数据,使用Chrome浏览器开发者工具显示检查网页源代码,json模块的dumps,loads,dump,load方法介绍
    Python 基本语法,文件读写,数据结构和类型
    python 数据工程 and 开发工具Sublime
    jieba user guide
    python各类项目模块记录
    python parse xml using DOM
  • 原文地址:https://www.cnblogs.com/Rye-Catcher/p/9775507.html
Copyright © 2011-2022 走看看