示例#1
0
        public static PostCreateModel Create(New n)
        {
            PostCreateModel item = new PostCreateModel();

            item.tags = new List <string>();
            if (n.Tags != null && n.Tags.Trim() != string.Empty)
            {
                var taglist = n.Tags.Trim().Split('-');
                foreach (var tag in taglist)
                {
                    if (tag.Trim() == "topbank.vn" || tag.Trim() == "cungcau.vn" || tag.Trim() == "viettimes" || tag.Trim() == "vietnambiz" || tag.Trim() == "conglyxahoi.net.vn" || tag.Trim() == "www.sggp.org.vn" || tag.Trim() == "cafef.vn" || tag.Trim() == "vneconomy.vn" || tag.Trim() == "cuoi.tuoitre.vn" || tag.Trim() == "tuoitre.vn")
                    {
                        item.Sggp = true;
                    }
                    else if (tag.Trim() == "batdongsan.com" || tag.Trim() == "fackcheck.vn")
                    {
                        item.Bds = true;
                    }
                    if (tag.Trim() != "")
                    {
                        item.tags.Add(tag.Trim());
                    }
                }
            }
            var cats = n.Categories.Split("-");

            item.category   = n.Categories;
            item.categories = new List <string>();
            for (int i = 0; i < cats.Length; i++)
            {
                if (cats[i].Trim() != "")
                {
                    item.categories.Add(cats[i]);
                }
            }
            item.title   = n.Title.ToString();
            item.content = n.Rendered.ToString();
            item.img     = n.Image;
            return(item);
        }
示例#2
0
        public static void CreateAsync(PostCreateModel _post)
        {
            var config = new WordPressSiteConfig
            {
                Username = "******",
                Password = "******",
                BaseUrl  = "https://www.saigontown.com/",
                BlogId   = 1
            };

            using (var client = new WordPressClient(config))
            {
                List <Term> terms = new List <Term>();
                for (int i = 0; i < _post.tags.Count; i++)
                {
                    var nOC = _post.tags[i].Split(' ').Length;
                    if (nOC > 7)
                    {
                        continue;
                    }
                    var tag   = _post.tags[i];
                    var exist = client.GetTerms("post_tag", new TermFilter
                    {
                        Search = tag
                    });
                    if (exist.Length > 0)
                    {
                        terms.Add(exist[0]);
                    }
                    else
                    {
                        var term = new Term
                        {
                            Name        = tag,
                            Description = "term description",
                            Slug        = String.Join('_', tag.ToLower().Split(" ")),
                            Taxonomy    = "post_tag"
                        };
                        var termId = client.NewTerm(term);
                        term.Id = termId;
                        terms.Add(term);
                    }
                }

                for (int i = 0; i < _post.categories.Count; i++)
                {
                    terms.Add(new Term
                    {
                        Id       = _post.categories[i],
                        Taxonomy = "category"
                    });
                }

                var post = new Post
                {
                    PostType        = "post",
                    Title           = _post.title,
                    Content         = _post.content,
                    PublishDateTime = DateTime.Now,
                    Terms           = terms.ToArray(),
                    Status          = "publish",
                };
                string realImg = _post.img;
                if (!_post.Sggp)
                {
                    realImg = _post.img.Split("_")[0];
                    if (!realImg.Contains(".jpg") && !realImg.Contains(".jpeg"))
                    {
                        realImg += ".jpg";
                    }
                }
                // if (_post.Bds)
                // {
                //     client.NewPost(post);
                //     return;
                // }
                var featureImage = Data.CreateFromUrl(realImg);
                var media        = client.UploadFile(featureImage);
                post.FeaturedImageId = media.Id;

                var id = Convert.ToInt32(client.NewPost(post));
            }
        }